[英]SQL Query JOIN with 4 tables
谁能帮我?
我有4个表格的帖子 , 用户 , 用户详细信息和评论 。
这是结构:
帖子
用户
users_details
评论
我有一个查询,要在特定帖子上显示评论。
这是我写的,但是头像列中没有显示任何结果。 看来我在连接或其他方面写错了。
SELECT comments.id as comment_id,
comments.user_id as user_id,
comments.post_id as post_id,
comments.parent as parent,
comments.comment as comment,
comments.posted as posted,
users_details.avatar as avatar,
users.username as username
FROM `comments`
LEFT JOIN users ON users.id = comments.user_id
LEFT JOIN users_details ON users_details.user_id = users.id
WHERE comments.post_id='60337'
ORDER BY posted ASC
这是带有结果的表格的屏幕快照https://i.imgur.com/VQ8KwV1.png
我要提及的头像字段在users_details表中具有该用户的值,因此应显示...
谢谢!
我可以说出导致此问题的两个潜在原因。
1.用户没有头像。
试试: Select Avatar from Users_Details where User_Id in (2,9212)
并确保它返回一些数据。
2.用于联接表的主/外键不匹配
在下面运行这些查询,并确保它们返回相同的用户。
select * from users where id in (2,9212)
select * from users_details where user_id in (2,2912)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.