我需要更改下面的现有JOIN查询,以便还包含与帖子制作者的users.image
相关联的UserID
数据。类似的东西:
users.image WHERE users.UserID = posts.userid
我对加入查询还不是很好。我该怎么做?
现有查询:
$result = mysql_query("SELECT posts.* FROM listen JOIN posts ON posts.userid = listen.listenid WHERE listen.userid = '$user_id' ORDER BY DATE desc") or die(mysql_error());
答案 0 :(得分:2)
只需添加另一个JOIN子句:
SELECT posts.*
FROM listen
JOIN posts ON (posts.userid = listen.listenid)
JOIN users ON (users.UserID = posts.userid)
WHERE listen.userid = '$user_id'
ORDER BY DATE desc
您可能需要将JOIN更改为特定的连接,例如LEFT JOIN,具体取决于您所追求的内容。
顺便说一句,在多行上查看查询更容易。
修改:您可能希望添加您在字段中选择的其他项目,例如SELECT posts.*, users.*