Prøv dette:
insert into [table] ([data])
output inserted.id, inserted.data into table2
select [data] from [external_table]
OPDATERING: Re:
Denis - det virker meget tæt på det, jeg vil gøre, men du kunne måske rette følgende SQL-sætning for mig? Grundlæggende repræsenterer [data] i [tabel1] og [data] i [tabel2] to forskellige/adskilte kolonner fra [ekstern_tabel]. Den erklæring, du har sendt ovenfor, virker kun, når du ønsker, at kolonnerne [data] skal være de samme.
INSERT INTO [table1] ([data])
OUTPUT [inserted].[id], [external_table].[col2]
INTO [table2] SELECT [col1]
FROM [external_table]
Det er umuligt at udskrive eksterne kolonner i en insert
udtalelse, så jeg tror, du kunne gøre sådan noget her
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]
;