sql三表查询
今天突然遇到的一个小盲区
有三张表:
report表有举报者的userid,举报帖子的postid
post有postid,帖子作者userid
user_info有userid和username
想要查出举报者的id和名字,举报帖子作者的id和名字就是查不出来,大佬指点了下悟了
代码如下:
SELECT r.report_id, r.report_user, //这个是举报者的userid u1.user_name AS reporter, r.post_id, p.user_id, //这个是帖子作者userid u2.user_name AS author, FROM report r JOIN post p ON r.post_id= p.post_id JOIN user_info u1 ON r.report_user= u1.user_id JOIN user_info u2 ON u2.user_id = p.user_id
原本我以为ON后只能写FROM后那个表的列,就没写最后一行,而且确定所有列都不为空的话就不用LEFT JOIN直接用JOIN

浙公网安备 33010602011771号