HOME備忘帳

MySQLメモ

MySQLのSQL文アンチョコ。

REPLACE

基本的にINSERTと同じ動作だが、テーブルにプライマリキーやユニークインデックスが設定されていて、すでに同じ値が登録済みだった場合、DELETE後にINSERTされる。

PKやUNIQUEがないテーブルだと、INSERTと同じようにしか働かない。

すべてのカラムについて、あれば更新・なければ新規登録…という処理には便利。一部のカラムしか触らない更新には、逆に不便(というかUPDATE使おう)。

REPLACE テーブル名
 [INTO] (カラム名, カラム名)
 VALUES (値, 値)
REPLACE テーブル名
    SET カラム名 = 値,
        カラム名 = 値

最終更新日:2010/10/05

[ ページ先頭へ ]