【发布时间】:2013-04-22 19:08:14
【问题描述】:
当我写的时候查询按预期执行:
SELECT id, day2.count - day1.count AS diff
FROM day1 NATURAL JOIN day2;
但我真正想要的是正确的加入。写的时候,
SELECT T1.id, day2.count - day1.count AS diff
FROM day1 RIGHT JOIN day2 AS T1
ON day1.id = day2.id
它说它无法识别字段列表中的 day2.count。 (另外,我不知道第二个查询是否应该是RIGHT OUTER JOIN,但是这种情况下的结果是一样的。)
我觉得我错过了一些简单的东西。
编辑:以下是定义:
第 1 天
id bigint(8) NOT NULL
count bigint(21) NOT NULL
第二天
(与第 1 天相同)
想法是 day2 表中可能有新的 id,而 day1 中没有。
【问题讨论】:
-
您可以在帖子中包含您的表定义吗?
-
您是否尝试过 Natural Right Join?它出现在 mysql 参考资料中。 dev.mysql.com/doc/refman/5.0/en/join.html
标签: mysql sql right-join