我有一個臨時表如下複雜TSQL多行插入與輸出
DECLARE @InsertedRows TABLE (RevId INT, FooId INT)
我也有其他的兩個表
Foo(FooId INT, MyData NVarchar(20))
Revisions(RevId INT, CreatedTimeStamp DATETIME)
對於富每一行,我需要一個)插入一行插入修訂版,並b)插入一行到@InsertedRows與Foo和修訂版中的相應ID值。
我試着使用插入輸出選擇如下寫的東西:
INSERT INTO Revisions (CURRENT_TIMESTAMP)
OUTPUT Inserted.RevId, Foo.FooId INTO @InsertedRows
SELECT FooId From Foo
然而,Foo.Id沒有在輸出列列表中允許的。另外,SELECT中返回的Id不會插入到表中,所以這是另一個問題。
我該如何解決這個問題?
請準備完整的模式(標識列/ ...)和採樣數據。 http://sqlfiddle.com – lad2025