MySQL条件联接表

克拉克

我想列出给定用户的帖子和评论,但也要列出给定用户尚未评论的帖子。

假设我有以下表格和内容

表帖

ID  TITLE
1   My post A
2   My post B
3   My post C

表注释

ID  COMMENT         POST_ID     USER_ID
1   My comment X        1          1
2   My comment Y        2          1
3   My comment Z        1          2

我跑

select * from post 
left join comment on post.id = comment.post_id
where comment.user_id=1

当然我得到了

ID  TITLE        ID    COMMENT          POST_ID    USER_ID
1   My post A     1    My comment X      1          1
2   My post B     2    My comment Y      2          1

我想获取所有帖子事件,其中一个未被用户1评论,但我不希望用户2发表评论

ID  TITLE        ID    COMMENT          POST_ID    USER_ID
1   My post A     1    My comment X      1          1
2   My post B     2    My comment Y      2          1
3   My post C   

预先感谢您的帮助

哈里德·朱奈德(M Khalid Junaid)

将您的条件从where移到on子句,这样即使用户尚未发表评论,您也将获得帖子

select * from post 
left join comment
on post.id = comment.post_id
AND comment.user_id=1

在此处查看演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章