我在网站的任何地方和谷歌上都找不到我找到的答案,我有2个表格,每个表格都有特定的信息,报告给出了重复数据 我需要获取名称,反馈ID和最多包含1个反馈ID的网站。
这是我的2张桌子
表:反馈
userID | ID
john.smith |1
george.wilson |2
justin.example |3
justin.example |4
juliana.something |5
george.wilson |6
表:用户(此表中的其他信息说明了重复的原因)
UserID |Site
george.wilson |location 1
george.wilson |location 1
george.wilson |location 1
john.smith |Location 2
john.smith |Location 2
juliana.something |Location 3
justin.example |Location 4
justin.example |Location 4
当前查询
SELECT feedback.userID, feedback.id, Users.Site
FROM feedback
INNER JOIN users ON
feedback.userID = users.userid
WHERE feedback.userID <> 'x'
当前结果
UserID |ID | Sites
john.smith |1 |Location 2
john.smith |1 |Location 2
george.wilson |2 |location 1
george.wilson |2 |location 1
george.wilson |2 |location 1
justin.example |3 |Location 4
justin.example |3 |Location 4
justin.example |4 |Location 4
justin.example |4 |Location 4
juliana.something |5 |Location 3
george.wilson |6 |location 1
george.wilson |6 |location 1
george.wilson |6 |location 1
预期结果
UserID |ID | Sites
john.smith |1 |Location 2
george.wilson |2 |location 1
justin.example |3 |Location 4
justin.example |4 |Location 4
juliana.something |5 |Location 3
george.wilson |6 |location 1
我的查询已经最小化,需要更多内容,但错误来自我的“内部联接”用户,是否可以帮助我解决此问题? (我正在使用My Sql Workbench 6.0) 提前谢谢你!
答案 0 :(得分:1)
您可以使用users
的{{1}}子句加入feedback
表,以限制行的数量:
limit
答案 1 :(得分:0)
问题是重复的数据。 SQL不知道或不关心它为什么在表中被复制,它只是准确地返回与您的查询匹配的所有内容。这是一个非常简单的查询,所以只需添加DISTINCT就可以消除重复的行而不需要任何额外的奇怪连接。
SELECT DISTINCT feedback.userID, feedback.id, users.Site
FROM feedback, users
WHERE feedback.userID = users.userid
AND feedback.userID <> 'x'