我的程序中有临时表;我试图从这样的select语句中插入数据:
INSERT INTO #temptable
SELECT fee, expense, total FROM invoice
UNION
SELECT vat, holdingtax, total FROM uplifts
...但是在我的 temptable 中,只有第一个select语句被填充到表中,而下一个select语句没有插入数据。
答案 0 :(得分:2)
语法看起来不错,
第二张表中可能存在重复。
您可以使用Union All而不是Union进行测试。
我只是在没有插入的情况下运行查询,看看你是否返回了预期的结果。
答案 1 :(得分:2)
我假设UNION正在删除重复数据。 我刚用union ALL进行了测试:
insert into #temptable
select top 1 name from sys.tables
union all
select top 1 name from sys.tables a
我得到了(2 row(s) affected)
尝试用UNION ALL替换UNION