0

我正在编写新脚本。它类似于 9gag,有帖子和人们喜欢/不喜欢它们等等。

我有 3 个用于帖子、用户和 like_status 的表

例如:

帖子表结构:

postid, postdata , userid, ...

用户表结构:

userid, username , ....

like_status

postid,userid,liked, disliked

我曾经使用 MySQL 查询

SELECT A.*, B.username FROM posts A, users B WHERE A.userid=B.userid

然后我通过将会话用户标识分配给一个变量$SID并使用这个 MySQL 查询来获得类似的状态

SELECT * FROM like_status WHERE userid=$SID

一切正常,但我有点担心服务器负载。

哪个更适合服务器负载和内存,以运行加入查询:

SELECT A.*, B.username, C.liked, C.disliked 
FROM posts A   
JOIN users B ON (A.userid = B.userid)   
JOIN like_status C ON (C.userid = $SID)

如果我使用该查询来获取诸如 10 个帖子之类的帖子数量呢?

SELECT A.*, B.username, C.liked, C.disliked 
FROM posts A   
JOIN users B ON (A.userid = B.userid)   
JOIN like_status C ON (C.userid = $SID)   
ORDER BY A.postid limit 10

.. 它会导致任何性能问题吗?

而已。此致

4

0 回答 0