Transact-SQL:插入xyz(从abc中选择*)

Dav*_*vid 2 sql t-sql sql-server for-loop

我想在MS SQL中实现一个在Oracles PL/SQL中看起来像这样的构造:

declare
asdf number;
begin
for r in (select * from  xyz) loop
   insert into abc (column1, column2, column3) 
   values (r.asdf, r.vcxvc, r.dffgdfg) returning id into asdf;

    update xyz set column10 = asdf where ID = r.ID;
end loop;
end;
Run Code Online (Sandbox Code Playgroud)

任何想法如何实现这将是有帮助的.

提前致谢

joh*_*n84 6

这似乎只是一张桌子的副本,对吧?

好:

SELECT column1, column2, column3 INTO abc FROM xyz
Run Code Online (Sandbox Code Playgroud)

我想你也可以这样

INSERT INTO abc SELECT column1, column2, column3 FROM xyz
Run Code Online (Sandbox Code Playgroud)

但在第二种情况下,您需要先创建表,第一种情况也是创建表

干杯约翰内斯