これは実際にはまっすぐなようですが、これを正しく検証して確実に実行したいと考えています。結合された選択に基づいてSQLレコードを更新する
基本的に私は、これらのレコードのUPDATEを実行したい:
SELECT contact.company, contact.coaddress, contact.costate, contact.cocity, contact.cozip, contact.phonebusiness, dial.AgentID, dial.Attempts, dial.CRC
FROM contact LEFT OUTER JOIN
dial ON contact.DialID = dial.DialID
WHERE (dial.AgentID > '-1') AND (contact.cozip LIKE '600%' OR
contact.cozip LIKE '601%' OR
contact.cozip LIKE '606%' OR
contact.cozip LIKE '608%' OR
contact.cozip LIKE '605%' OR
contact.cozip LIKE '604%' OR
contact.cozip LIKE '613%' OR
contact.cozip LIKE '611%')
私はSELECTステートメントの私の正しい結果を取り戻します。私は今、それらのレコードを更新する必要があります。
UPDATE dial
SET ProjectID = '60'
FROM dial INNER JOIN
contact ON dial.DialID = contact.DialID
WHERE (dial.AgentID > '-1') AND (contact.cozip LIKE '600%' OR
contact.cozip LIKE '601%' OR
contact.cozip LIKE '606%' OR
contact.cozip LIKE '608%' OR
contact.cozip LIKE '605%' OR
contact.cozip LIKE '604%' OR
contact.cozip LIKE '613%' OR
contact.cozip LIKE '611%')
はこれが正しい見ていますか?これを行うより効率的な方法はありますか?
更新ステートメントをトランザクションに入れてテストします。上手く見えますが、最初にトランザクションの安全性をテストすることはできません。 – Andrew