MySQLメモ
MySQLのSQL文アンチョコ。
REPLACE
基本的にINSERTと同じ動作だが、テーブルにプライマリキーやユニークインデックスが設定されていて、すでに同じ値が登録済みだった場合、DELETE後にINSERTされる。
PKやUNIQUEがないテーブルだと、INSERTと同じようにしか働かない。
すべてのカラムについて、あれば更新・なければ新規登録…という処理には便利。一部のカラムしか触らない更新には、逆に不便(というかUPDATE使おう)。
REPLACE テーブル名 [INTO] (カラム名, カラム名) VALUES (値, 値)
REPLACE テーブル名 SET カラム名 = 値, カラム名 = 値
最終更新日:2010/10/05
[ ページ先頭へ ]