答案 0 :(得分:0)
这不足为奇。
UNION
删除重复的行。因此,当您添加新列时,您将获得相同的不同行。例如:
表1
x y
1 'a'
1 'b'
表2
x y
1 'c'
2 'd'
以下查询:
select x from table1
union
select x from table2
返回:
1
2
但是,包括y
:
select x, y from table1
union
select x, y from table2
您将获得四行:
x y
1 'a'
1 'b'
1 'c'
2 'd'
如果使用union all
,则两种情况下的行数均相同。在第一种情况下,您将在结果集中看到重复的行。
这回答了您提出的问题。如果您要特定的结果集,请问一个 new 问题,该问题是示例数据,所需结果以及您的查询中的文本。
答案 1 :(得分:0)
请使用“全部联合”而不是“联合”。当您在此处使用Union时,它将消除输出中的重复行。