我可以在 teradata 中使用 union all 语句和 insert into 语句吗?

Can I use union all statement with insert into statement in teradata?

我有两个具有相同列数和相同数据类型的 table。然后我想用“union all”语句合并,并想将结果值插入另一个 table.

我正在使用这个查询

    INSERT into DB.HRfinal

select LoginID,JobTitle,Name from DB.HR1
UNION ALL
select LoginID,JobTitle,Name from DB.HR2

但它只是从第一个 table 插入值 因为在 HR1 table 中有 256 行,在 HR2 table 中有 230 行,但它只在 HRfinal Table

中插入 256 行

我重新创建了您的示例,并在最终 table 中从两个 table 中获取了行。

我怀疑问题出在联合层面,而不是插入部分。

尝试:

步骤 1.

SELECT * INTO #tmp
(select LoginID,JobTitle,Name from DB.HR1
UNION ALL
select LoginID,JobTitle,Name from DB.HR2) TMP

检查 #tmp table 是否包含所有行。如果有那么:

第 2 步

INSERT into DB.HRfinal
SELECT * FROM #tmp