我正在尝试制作一个脚本,它将显示我和我的朋友的最新帖子。有 3 个表与此相关 - statusUpdates(包含帖子)、friends(使用 ID 的朋友之间的链接)和 users(包含网站所有用户的详细信息)。我目前使用的脚本如下。
$myQuery = mysql_query ("SELECT * FROM statusUpdates AS su
LEFT JOIN (friends AS fr) ON
(fr.frHostID = su.authorID OR fr.frContactID = su.authorID)
WHERE (fr.frHostID = 105090)
GROUP BY su.statusID
ORDER BY su.statusID
DESC LIMIT 0,5");
请注意,105090 是我自己的 ID。
问题是,当我没有朋友时,即使我进行了多次状态更新,也没有显示一条帖子。
一个解决方案是在朋友表中创建一行,将我添加为我自己的朋友。但在这种情况下,我必须防止我自己的名字出现在“显示好友列表”页面和任何其他相关页面中。
我最初使用INNER JOIN
并遇到上述问题。然后我遇到了一个类似的问题,并LEFT JOIN
按照建议修改了我的脚本。它似乎已经解决了该帖子的 OP 问题,但不是我的。我不能在那篇文章中提交评论(可能是因为它已经 2 岁了)。所以我正在创建这篇文章。