我很新的SQL。SQL Server使用來自一個查詢的結果並在另一個查詢中使用它。
我想以下幾點:
SELECT transID from tblTrans WHERE transDesc = @TransDesc
UPDATE tblData SET Complete = GETDATE() WHERE transNo = (Result from First Query)
我如何把第一次查詢的結果到第二個查詢。
我很新的SQL。SQL Server使用來自一個查詢的結果並在另一個查詢中使用它。
我想以下幾點:
SELECT transID from tblTrans WHERE transDesc = @TransDesc
UPDATE tblData SET Complete = GETDATE() WHERE transNo = (Result from First Query)
我如何把第一次查詢的結果到第二個查詢。
UPDATE tblData SET Complete = GETDATE() WHERE transNo IN (SELECT transID from tblTrans WHERE transDesc = @TransDesc)
嘗試......
UPDATE tblData SET Complete = GETDATE()
WHERE transNo IN (SELECT transID from tblTrans WHERE transDesc = @TransDesc);
UPDATE tblData
SET Complete = GETDATE()
WHERE transNo IN
(SELECT transID
from tblTrans
WHERE transDesc = @TransDesc)
這樣做有兩種方式。首先遵循原來的,並假定只有一個TRANSID:
DECLARE @transID int
SELECT @transID = transID from tblTrans WHERE transDesc = @TransDesc
UPDATE tblData SET Complete = GETDATE() WHERE transNo = @transID
第二是整潔的,因爲它把整個更新成一個單一的命令:
UPDATE tblData SET Complete = GETDATE()
FROM tblTrans t
WHERE t.transID = tblData.transNo
AND t.transDesc = @TransDesc