我想追加/更新虛擬表中的記錄。如何追加/更新SQL Server虛擬表中的記錄?
TableA(ID,IdentifyingNumber,Included) TableB(ID,IdentifyingNumber,Included)
Records in TableA
1, 101, 0
2, 102, 1
3, 103, 1
Records in TableB
1, 201, 0
2, 202, 0
我需要出去的兩個表中的記錄放於表C
TableC(IdentifyingNumberA,IncludedA,IdentifyingNumberB,IncludedB)
Records in TableC
101, 0, 201, 0
102, 1, 202, 0
103, 1, Null, Null
這是我的第一個表
INSERT INTO @EntityListL(RowID,EntityID,IdentifyingNumberL,IncludedL)
SELECT ROW_NUMBER() OVER(ORDER BY d.EntityID DESC) AS Row,
d.EntityID,d.IdentifyingNumber,d.Included FROM @EntityList d
where d.Included = 0
ORDER BY d.IdentifyingNumber
這是我的第二個表
INSERT INTO @EntityListR(RowID,EntityID,IdentifyingNumberR,IncludedR)
SELECT ROW_NUMBER() OVER(ORDER BY d.EntityID DESC) AS Row,
d.EntityID,d.IdentifyingNumber,d.Included FROM @EntityList d
where d.Included = 1
ORDER BY d.IdentifyingNumber
我嘗試以低於SQL狀態退出012
select A.IdentifyingNumber as IdentifyingNumberL, A.Included as IncludedL,
B.IdentifyingNumber as IdentifyingNumberR, B.Included as IncludedR from
(
select ROW_NUMBER() OVER(ORDER BY IdentifyingNumber) AS Row,
IdentifyingNumber, Included
from @EntityList where Included=0
)
A
left outer join
(
select ROW_NUMBER() OVER(ORDER BY IdentifyingNumber) AS Row,
IdentifyingNumber,Included from @EntityList where Included=1
)B
on A.Row=B.Row
請讓我知道如何在SQL Server中實現。
感謝提前
通過虛擬你是指臨時表嗎?你有沒有嘗試過任何事情,或者你只是希望有人會給你一個答案? – Tanner
是的虛擬表中,我嘗試很多,但沒有執行出。 –
添加你對這個問題的嘗試,然後任何人的答案可以使用它作爲基礎,並糾正錯誤。 – Tanner