私はSQLでかなり新しいです。
私は次のものが欲しい:
SELECT transID from tblTrans WHERE transDesc = @TransDesc
UPDATE tblData SET Complete = GETDATE() WHERE transNo = (Result from First Query)
最初のクエリの結果を 2 番目のクエリに入れる方法を教えてください。
私はSQLでかなり新しいです。
私は次のものが欲しい:
SELECT transID from tblTrans WHERE transDesc = @TransDesc
UPDATE tblData SET Complete = GETDATE() WHERE transNo = (Result from First Query)
最初のクエリの結果を 2 番目のクエリに入れる方法を教えてください。
これには 2 つの方法があります。1 つ目はオリジナルに続き、transID が 1 つしかないことを前提としています。
DECLARE @transID int
SELECT @transID = transID from tblTrans WHERE transDesc = @TransDesc
UPDATE tblData SET Complete = GETDATE() WHERE transNo = @transID
2 つ目は、更新全体を 1 つのコマンドにまとめているため、より適切です。
UPDATE tblData SET Complete = GETDATE()
FROM tblTrans t
WHERE t.transID = tblData.transNo
AND t.transDesc = @TransDesc
UPDATE tblData
SET Complete = GETDATE()
WHERE transNo IN
(SELECT transID
from tblTrans
WHERE transDesc = @TransDesc)