联合所有错误必须具有相同数量的表达式

use*_*136 1 t-sql sql-server union

我试图运行此查询但我收到此错误:

使用UNION,INTERSECT或EXCEPT运算符组合的所有查询在其目标列表中必须具有相同数量的表达式.

我在这做错了什么?请帮忙.

SELECT      *
into       #xx 
From (
Select *
FROM #x 
union all  
select * from MartDB.DBO.BAW_AllSources_Stage1
) AAAsds
Run Code Online (Sandbox Code Playgroud)

Dhr*_*shi 5

你的内部查询部分

Select *
FROM        #x 
union all  
select * 
from MartDB.DBO.BAW_AllSources_Stage1
Run Code Online (Sandbox Code Playgroud)

在参与UNION的两个查询中都有*.

检查并查看两个*是否按顺序转换为相同数量的列和数据类型.

  • @OP这就是你应该避免使用`*`的原因. (4认同)