Mysql 查询得到的结果太多,无法连接
我得到了大量的行,但我的初始(左)表“challenges_day3”只有一行Mysql 查询得到的结果太多,无法连接,mysql,Mysql,我得到了大量的行,但我的初始(左)表“challenges_day3”只有一行 SELECT *,challenges_day3.feedback AS feedback_d3,challenges_day3.feedback_please AS feedback_please_d3 FROM challenges_day3 LEFT JOIN challengers ON challenges_day3.code_name=challengers.code_name LEFT JOIN c
SELECT *,challenges_day3.feedback AS feedback_d3,challenges_day3.feedback_please AS feedback_please_d3
FROM challenges_day3
LEFT JOIN challengers ON challenges_day3.code_name=challengers.code_name
LEFT JOIN challenges_day1 ON challengers.code_name=challenges_day1.code_name
LEFT JOIN challenges_day2 ON challenges_day1.code_name=challenges_day2.code_name
我只希望得到一行结果。我使用left join来实现这一点是错误的吗?如果连接表中有多个匹配项,每个匹配项都将返回自己的行。例如,如果c3.code_名称为“James Bond”,且挑战者中有两行代码名为“James Bond”,则您将得到两行 如果您希望每个表的代码名都是唯一的,那么应该在表架构中将其标记为唯一的。更好的是,挑战者不应该被引用他们的名字(可以更改),而应该被引用他们的ID作为参考 然后使用ID来加入,该ID不会更改,并且对于每个表都是唯一的
SELECT
*,
challenges_day3.feedback AS feedback_d3,
challenges_day3.feedback_please AS feedback_please_d3
FROM challenges_day3 c3
LEFT JOIN challengers c ON c3.challenger_id = c.id
LEFT JOIN challenges_day1 c1 ON c1.challenger_id = c3.challenger_id
LEFT JOIN challenges_day2 c2 ON c2.challenger_id = c3.challenger_id
非常感谢。是否有一种方法可以仅获取处于挑战中的行数_day3@ScotNery
从第3天的挑战中选择计数(*)
谢谢!独特性是我的问题!我在第一天和第二天有很多重复的代码名!
SELECT
*,
challenges_day3.feedback AS feedback_d3,
challenges_day3.feedback_please AS feedback_please_d3
FROM challenges_day3 c3
LEFT JOIN challengers c ON c3.challenger_id = c.id
LEFT JOIN challenges_day1 c1 ON c1.challenger_id = c3.challenger_id
LEFT JOIN challenges_day2 c2 ON c2.challenger_id = c3.challenger_id