特定の文字列を別の文字列に置換する mysql

logo-mysql-110x57フィールド内の特定の文字を置換する方法をφ(..)メモメモ

文字列関数 REPLACE()

文字列を置換するには、文字列関数 REPLACE() を使います。置換対象にマッチした文字列を置換後の文字に置き換えます。

SELECT REPLACE(フィールド名,'置換対象','置換後の文字') FROM テーブル名;

実際にはこんなかんじで使用しました。

SELECT field, REPLACE(field,'text_A','text_B') as field_replace FROM table;

select文だとただの置換え表示なので、UPDATE文でデータベースの置換を行います。

UPDATE テーブル名 SET カラム名=REPLACE(カラム名,"置換対象","置換後の文字");

実際にはこんなかんじで使用しました。

UPDATE table SET field = REPLACE(field,'text_A','text_B') where field like '%text_A%'

where句以降は蛇足です。なんとなく効率が良くなるような気がしてつけましたが、根拠は全くありません。前後一致のlike文なので逆に効率落ちているかもしれません。

コメント

タイトルとURLをコピーしました