メインのトランザクションテーブルとしましょう
主要 :
mainID Name Active
1 sharath 1
2 kiran 0
3 ashish 1
取引 :
TransID TransType status MainID IsActive
101 D 22 1 0
102 R 27 2 1
103 R 32 2 1
104 D 11 1 0
105 R 43 3 0
これらの中でどの update ステートメントが望ましいか:
1)
Update TR
set status = 0,
Isactive = 0
from Transaction TR
inner join main MN with(nolock) on MN.MainID = TR.MainID
where MN.Isactive = 0
2)
Update TR
set status = 0,
Isactive = 0
from Transaction TR
inner join main MN on MN.MainID = TR.MainID
where MN.Isactive = 0
最初のクエリでは、Main との内部結合を作成しwith(nolock)
、Isactive = 0 の MainID のレコードを更新するために使用しました。
2 番目のクエリでは、使用せずwith(nolock)
に update ステートメントを記述しました。
どちらが好ましいか、n は今後もエラーなしで更新を行います。