在PHP中扩展mysql JOIN查询

时间:2009-06-03 06:09:44

标签: php mysql

我需要更改下面的现有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());

1 个答案:

答案 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.*