UPDATEステートメントを使用して情報を更新する必要がある正確な母集団をカウントするSQL照会があります。しかし、いくつかの複雑な結合が含まれており、UPDATEステートメントでそのステートメントを再作成する方法がわかりません。どんな助け?SELECTステートメントを対応するUPDATEステートメントに変換します
私のクエリはここにある:ここ
select distinct c.id
from implementation.tt_ngma_exclude_emails nee
join customer c on nee.util_account_id = c.util_internal_id
join customer_notification_contact cnc on cnc.customer_id = c.id
left join customer_notification_contact_audit cnca on cnca.customer_id = c.id
where cnc.changed_on = '2015-11-15 12:30:02';
目標は、私はから選択されていない実装テーブル、customer_notification_contact
テーブル内の特定のフィールドを更新することです。私はcnc.customer_id = c.id
はここに私の試みだが、動作するようには思えないことをどこでもNULLにCNCテーブルにemail
フィールドを設定します:
UPDATE customer_notification_contact cnc
(select distinct cnc.customer_id opower_customer_id
from implementation.tt_ngma_exclude_emails nee
join customer c on nee.util_account_id = c.util_internal_id
join customer_notification_contact cnc on cnc.customer_id = c.id
where cnc.changed_on = '2015-11-15 12:30:02'
) T2
SET cnc.email = NULL
WHERE cnc.customer_id = T2.opower_customer_id;
ジョインは同じままです。 'select ... from ...'を 'update ...'に変更してください。 –
申し訳ありません。元の質問はあいまいでした。私はcustomer_notification_contactを更新したいと思います。 implementation.tt_ngma_exclude_emailsではありません。 – Asif