社員ブログ

なければ INSERT あれば UPDATE (ON DUPLICATE KEY)

2010年03月11日 木曜日

対象データが存在すればUPDATEを行い

存在しなければINSERTを行うSQL

INSERT INTO テーブル (フィールド1, フィールド2)
    VALUES (1, 'Los Angeles') 
        ON DUPLICATE KEY 
    UPDATE フィールド2 = 'Las Vegas';

※フィールド1はキー項目

INSERT 部分の記述に keyとなる項目が必要

INSERT を行った時に対象が存在しなければそのままINSERT を行い終了

 

例だと

フィールド1 が 1 のデータが存在しない場合は フィールド2 に’Los Angeles’を入れたデータを新規追加
存在する場合はフィールド2を’Las Vegas’に更新

 

どこいも行ったことがない人は’Los Angeles’に行きます。

‘Los Angeles’に行ったことがある人は’Las Vegas’に行くのです。見たいな感じ

 

Las Vegas に行きたい!

Trackback URL
文字サイズサイズ小サイズ中サイズ大