我有以下查询
SELECT 'Luke' AS [Jedi_names], 'Skywalker' AS [Jedi_surname]
INTO #Jedi
该CREATE
临时表#Jedi
和INSERT
它里面的数据。
我想OUTPUT
用来显示要保存在表中的数据,但是我不明白如何使用该OUTPUT
子句而不会收到错误消息
“'输出'附近的语法不正确。”
在INSERT INTO
查询中,我将编写以下内容
INSERT INTO #Jedi([Jedi_names],[Jedi_surname])
OUTPUT INSERTED.*
SELECT 'Luke' AS [Jedi_names], 'Skywalker' AS [Jedi_surname]
但这只是INSERT
如果表已经创建的那一行。
是否可以OUTPUT
在第一个查询中使用该子句?
您不能在output
语句中使用该子句select
。这仅适用于insert
,update
,delete
和merge
。
另一种选择是将其分为两个部分:首先,创建没有记录的临时表:
SELECT 'Luke' AS [Jedi_names], 'Skywalker' AS [Jedi_surname]
INTO #Jedi
WHERE 1=0
然后,使用以下命令将记录插入临时表中insert...output...select
:
INSERT INTO #Jedi
OUTPUT INSERTED.*
SELECT 'Luke' AS [Jedi_names], 'Skywalker' AS [Jedi_surname]
或简单地使用select into
然后select
:
SELECT 'Luke' AS [Jedi_names], 'Skywalker' AS [Jedi_surname]
INTO #Jedi;
SELECT [Jedi_names], [Jedi_surname]
FROM #Jedi;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句