私の中級レベルの MySQL スキルにとってはかなり複雑なので、質問を特定できるかどうか見てみましょう。
問題:
DB テーブルの 1 つのデータを更新する必要があります。問題は、更新しているデータが複数の行に関連付けられていることです。
ID mailing_list_idsubscriber_id
9031 51 81053
9112 52 81053
13535 71 81053
mailing_list_id 52 を更新して名前を 51 に変更する必要がありますが、subscriber_id はすでに mailing_list_id が 51 であるため、更新中にそのレコードをスキップしたいと考えています。
以下を使用する場合:
UPDATE サブスクリプション SET mailing_list_id = 51 WHERE mailing_list_id = 52;
重複したエントリがあるというエラーが表示されます。
クエリの重複を無視する必要がありますが、クエリの書き方がわかりません。どんな助けでも大歓迎です。
サブスクライバー ID が既にメーリング リスト ID を持っている行をスキップするには、クエリに何かを追加する必要があります # 変更しようとしているものと同じです。それが理にかなっているのか、それともこの時点で私がとりとめのないものなのかはわかりません. やりたいことはわかっているのですが、それを実現するためのクエリ構文や方法がわかりません。