Sql 使用union插入到表变量中
我有一个表变量,我想插入一个联合查询。union查询运行良好,但我似乎无法使insert正常工作(语法错误) 这样行吗?如果其他地方有问题,我可以发布我的真实代码 我在第一次选择时遇到语法错误Sql 使用union插入到表变量中,sql,sql-server-2008,union,Sql,Sql Server 2008,Union,我有一个表变量,我想插入一个联合查询。union查询运行良好,但我似乎无法使insert正常工作(语法错误) 这样行吗?如果其他地方有问题,我可以发布我的真实代码 我在第一次选择时遇到语法错误 INSERT INTO @table(a,b,c,d) SELECT a,b,c,d FROM table1 UNION SELECT a,b,c,d FROM table2 使用SELECT语句插入数据时,不需要使用Values子句。因此,我从中删除了值位,只需将两个SELECT查询返回
INSERT INTO @table(a,b,c,d)
SELECT a,b,c,d
FROM table1
UNION
SELECT a,b,c,d
FROM table2
使用SELECT语句插入数据时,不需要使用Values子句。因此,我从中删除了值
位,只需将两个SELECT查询返回的行合并即可
Sql server支持INSERT语句的语法,如
INSERT INTO Table_Name(Col1, COl2. Col3...)
SELECT Col1, COl2. Col3...
FROM Other_Table_Name
这将把select语句返回的结果集插入到目标表中。在您的情况下,结果是两个选择的并集,因此它与单个选择没有任何不同 在这种情况下不需要“值”
INSERT INTO @table (a, b, c, d)
SELECT a, b, c, d FROM table1
UNION
SELECT a, b, c, d FROM table2
也许值得(只是给答案增加一点价值)描述一下你改变了什么,以及为什么,如果不是很明显的话,这不是一个问题,gald它有帮助:)请尝试使用没有值的相同查询,致以最良好的祝愿,Abdeloihab
INSERT INTO @table (a, b, c, d)
SELECT a, b, c, d FROM table1
UNION
SELECT a, b, c, d FROM table2