これを試してください:
insert into [table] ([data])
output inserted.id, inserted.data into table2
select [data] from [external_table]
更新: Re:
デニス-これは私がやりたいことに非常に近いようですが、おそらく次のSQLステートメントを修正できますか?基本的に、[table1]の[data]と[table2]の[data]は、[external_table]とは異なる2つの異なる列を表します。上記で投稿したステートメントは、[data]列を同じにする場合にのみ機能します。
INSERT INTO [table1] ([data])
OUTPUT [inserted].[id], [external_table].[col2]
INTO [table2] SELECT [col1]
FROM [external_table]
insert
に外部列を出力することはできません ステートメントなので、このようなことができると思います
merge into [table1] as t
using [external_table] as s
on 1=0 --modify this predicate as necessary
when not matched then insert (data)
values (s.[col1])
output inserted.id, s.[col2] into [table2]
;