我可以使用您的专业知识。我有以下代码:插入...合并...选择(SQL Server)
INSERT INTO Table3 (Column2, Column3, Column4, Column5)
SELECT null, 110, Table1.ID, Table2.Column2
FROM Table1
JOIN Table1Table2Link on Table1.ID=Table1Table2Link.Column1
JOIN Table2 on Table1Table2Link.Column2=Table2.ID
现在我需要采取Inserted.ID(即在刀片上产生表3的身份)和Table2.ID并将其插入到任意一个临时表或表变量。通常我会使用OUTPUT子句,但是OUTPUT无法从不同的表中获取数据。现在我相信它可以用MERGE完成,但我不知道如何去做。我需要像这样:
INSERT INTO Table3 (Column2, Column3, Column4, Column5)
OUTPUT Inserted.ID, Table2.ID into @MyTableVar
SELECT null, 110, Table1.ID, Table2.Column2
FROM Table1
JOIN Table1Table2Link on Table1.ID=Table1Table2Link.Column1
JOIN Table2 on Table1Table2Link.Column2=Table2.ID
我很抱歉,如果这是一个重复的问题,但我找不到任何东西。
您可能需要这样做,方法是将要插入的值插入临时表中,然后使用“OUTPUT”获取新的产出价值。 –