我有2个表如下:Mysql的innerjoin条款不工作
talk
表:
topic_id | topic_name | user_id (user who create topic)
1 test1 1
2 test2 2
talk_reply
表:
talk_reply_id | message | topic_id | user_id (user who reply to specific topic)
1 hi1 1 3
2 hi2 1 4
user
表:
user_id | name
1 mark
2 pedro
3 gates
4 steve
我的查询如下:
SELECT `tr`.`message`,
`tr`.`user_id`,
`tr`.`topic_id`,
`u`.`name`
FROM `talk_reply` AS `tr`
INNER JOIN `users` AS `u` ON tr.user_id = u.user_id WHERE (tr.topic_id=1)
但我只得到1分的结果,而不是2,我缺少什么吗?谢谢。
你想得到什么? –
我想从talk_reply表中获取回复特定主题的用户的名称,在这种情况下topic_id 1 – d3bug3r
@zlippr - 您提供的数据返回两行。实际上*使用的数据中有一个错误,您没有向我们展示* actual *语句,或者MySQL的sql引擎包含严重错误。我怀疑这是后者:) –