サブクエリ+JOINを組み合わせて、複数結合条件でupdateする@mysql
サブクエリ・テーブルをjoinして、ON句で更新条件を記述する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
UPDATE 更新したいテーブル名 JOIN ( SELECT 参照元テーブル1.code as id, 参照元テーブル2.code as code, 参照元テーブル1.カラム名1 as カラム名1 参照元テーブル2.カラム名1 as カラム名2 FROM 参照元テーブル1 JOIN 参照元テーブル2 ON 参照元テーブル1.id = 参照元テーブル2.id ) tmp ON 更新したいテーブル名.id = tmp.id AND 更新したいテーブル名.code = tmp.code SET 更新したいテーブル名.カラム名1 = tmp.カラム名1, 更新したいテーブル名.カラム名2 = tmp.カラム名2 WHERE 更新したいテーブル名.カラム名1 is null |