情弱エンジニアのなかのblog

一人前のエンジニアになる為のブログです

MySQLのREPLACEについて

MySQLでREPLACEの使い方等について覚えたので記載いたします。 REPLACEはレコードに登録してある文字列や数値を置換したい時に使います。

書き方は以下のようになります。

UPDATE テーブル名 SET カラム名=REPLACE(カラム名, '置換前', '置換後') WHERE id=X;

実際に試してみます。以下の様なcustomersテーブルがあります。 f:id:nonaka-katuma-hal:20171116172500j:plain

UPDATE customers SET name=REPLACE(name, 'a', 'b') where id = 1;

id 1のname であるabcdのaをbに置換します。

f:id:nonaka-katuma-hal:20171116172618j:plain

id1 の abcd が bbcdに置換されています。

レコード全てを置換するなら where id = 1を削れば良いです。

UPDATE customers SET name=REPLACE(name, 'a', 'b');

f:id:nonaka-katuma-hal:20171116172950j:plain

レコードのaは全てbに置換されています。

こちら数値でも置換することができます。

f:id:nonaka-katuma-hal:20171116173410j:plain

testの1を5に置換します。

UPDATE customers SET test=REPLACE(test, '1', '5');

f:id:nonaka-katuma-hal:20171116173532j:plain

以下のサイトを参考にしました。

MySQLで一括置換をかける - Qiita

以上になります。