2012-10-23 80 views
0

這個查詢如何失敗?加入輸出結果

select * 
from ass 
join (
    UPDATE [dsa] 
    SET col1='123' 
    OUTPUT inserted.*) as ds on ass.dsaid = ds.ID 
+0

什麼做想做的事?插入或更新? –

+1

爲什麼不首先更新,而不是選擇加入.. –

+0

你有錯誤嗎?如果是這樣,請發佈**完全**和**完整**錯誤信息 - 謝謝。 –

回答

1

你必須分兩步做。用你的OUTPUT條款去給一個變量,然後從該變量的選擇:

DECLARE @tbl_out TABLE(ID int, col VARCHAR(10)); 

UPDATE [dsa] SET [col1] = '123' 
OUTPUT inserted.* INTO @tbl_out 

SELECT * FROM ass JOIN @tbl_out ds ON ass.dsaid = ds.ID 

(未測試)