【发布时间】:2018-05-07 09:50:47
【问题描述】:
我们有两个 MySQL 表,当使用标准连接进行连接时会产生重复的结果。原因是用于连接它们的公共字段不是唯一的。我们尝试了多种变体,但无法获得正确的结果。希望有人能指出我们正确的方向。
Table A / ws_511_1
Table B / ws_583_1
正确的输出应如下所示:
Correct output
使我们最接近正确输出的查询(此处并未包含所有列):
选择 a.col_3 AS 数据,SUM(a.col_4) AS `2016 年 10 月`,SUM(a.col_5) AS `2016 年 11 月`,SUM(b.col_4) AS `2017 年 2 月`,SUM(b. col_5) AS `March 2017` FROM ws_511_1 a LEFT JOIN (SELECT * FROM ws_583_1 b GROUP BY col_3) b ON b.col_3 = a.col_3 WHERE a.id!='1' GROUP BY a.col_3
这个查询的输出是:
Incorrect output
您会注意到 10 月和 11 月是正确的,但连接列的结果不正确。
【问题讨论】: