MySQLでInsertとUpdateを同時に行う方法 – ON DUPLICATE KEY UPDATE文
MySQLでInsertとUpdateを同時に行う方法
対象のレコードが存在すれば更新し、なければ登録といったinsert/updateを行いたい時があると思います。
その時に便利なのがON DUPLICATE KEY UPDATE文です。
この構文を使うと一発で実現可能です。
使い方
使い方は単純で
INSERT INTO a_table (a,b,c) VALUES (1,2,3)
ON DUPLICATE KEY UPDATE c=c+1;
こんな感じで使用します。
流れとしては
– a_tableにaという主キーがある前提で。
– a=1のレコードがなければ新規登録。
– a=1のレコードがあればcの値を+1する。
といった感じです。
とてもシンプルでわかりやすいです。
これを利用すれば、
今までselect文を使って存在確認をし、あればupdate処理、なければinsert処理といった
複数・分岐の処理を行わなくて済みます。
ぜひ利用してみてください。
“MySQLでInsertとUpdateを同時に行う方法 – ON DUPLICATE KEY UPDATE文” への4件の返信