gpt4 book ai didi

php mysql 显示好友的帖子

转载 作者:行者123 更新时间:2023-11-29 05:40:51 25 4
gpt4 key购买 nike

显示好友帖子的最佳方式是什么?

每个用户最多可以拥有 5000 个好友。

步骤:

1) mysql检索5000个好友的用户名。

2) 将 5000 个 friend 的用户名存储在一个 php 数组中。

3)SELECT posts, datatime FROM tbl_posts WHERE username IN ($array) ORDER BY id DESC LIMIT 10;

问题:假设 zac1987 是 php 数组中的第 5000 项。如果最新的10个帖子是zac1987发的,mysql是否需要浪费时间循环遍历5000条来判断这个帖子是不是他发的?因此,如果我想显示 10 个最新帖子,mysql 是否需要遍历 5000 个 friend x 10 个帖子 = 50,000 个项目?而且每5秒需要检查是否有新帖子,所以这意味着每5秒需要循环50,000条?有没有什么方法可以防止这么多循环/过滤项目过程?

最佳答案

SELECT  p.*
FROM friend f
JOIN post p
ON p.author = f.friend_id
WHERE f.user_id = $myuserid
ORDER BY
p.post_date DESC
LIMIT 10

你应该在 post (post_date), post (author), friend (friend_id, user_id) 上创建索引

根据基数,MySQL 要么使 post 成为连接的前导(在这种情况下将使用第一个索引),要么使 friend leading(在这种情况下,它将收集所有 friend 的帖子并对其进行排序)。

关于php mysql 显示好友的帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6919764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com