为什么 UNION ALL 会导致错误,我该如何加入我的数据集?
Why is UNION ALL causing errors and how do I join my datasets?
我有与以下类似的数据集
TABLE1
Column1,Column2,Column3,
ID1 ,ID2 ,Value1
TABLE2
Column1,Column2,Column3,
ID3 ,ID2 ,Value2
我想得到
TABLE3
Column1,Column2,Column3
ID1 ,ID2 ,Value1
ID3 ,ID2 ,Value2
我目前正在使用以下代码
select * from table1
union all
select * from table2;
这已成功将列添加到一起,但我得到了一些错误的值。我不确定我还应该做什么,感谢任何帮助!我正在使用 Vertica SQL.
编辑 ******
错误的值我的意思是例如:
table2.value2 = (null)
table3.value2 = 594792
谢谢
您是否尝试过使用 UNION 而不是 UNION ALL?
UNION 将删除重复数据,我想知道你指的是不是你的 "erroneous data",而 UNION ALL 将只显示所有内容。
在你的例子中,尝试:
SELECT* FROM table1
UNION
SELECT* FROM table2
问题已解决。这些列的顺序不同,因此没有正确匹配。我没有意识到这些列的顺序不同。 @Isaiah3015 我敢打赌数据库样本会使这个问题变得明显。感谢大家的帮助!
我有与以下类似的数据集
TABLE1
Column1,Column2,Column3,
ID1 ,ID2 ,Value1
TABLE2
Column1,Column2,Column3,
ID3 ,ID2 ,Value2
我想得到
TABLE3
Column1,Column2,Column3
ID1 ,ID2 ,Value1
ID3 ,ID2 ,Value2
我目前正在使用以下代码
select * from table1
union all
select * from table2;
这已成功将列添加到一起,但我得到了一些错误的值。我不确定我还应该做什么,感谢任何帮助!我正在使用 Vertica SQL.
编辑 ****** 错误的值我的意思是例如: table2.value2 = (null) table3.value2 = 594792
谢谢
您是否尝试过使用 UNION 而不是 UNION ALL?
UNION 将删除重复数据,我想知道你指的是不是你的 "erroneous data",而 UNION ALL 将只显示所有内容。
在你的例子中,尝试:
SELECT* FROM table1
UNION
SELECT* FROM table2
问题已解决。这些列的顺序不同,因此没有正确匹配。我没有意识到这些列的顺序不同。 @Isaiah3015 我敢打赌数据库样本会使这个问题变得明显。感谢大家的帮助!