読者です 読者をやめる 読者になる 読者になる

気ままNote

個人の技術メモ

MySQLで改行やカンマを置換する

問題

MySQLからCSVファイルを出力しようとしたら、DBのレコードに改行が含まれているため配列がズレてしまうことが起きた。CSVを出力する前にMySQL上で改行を処理したい。

解決

  • 改行

REPLACEを使用することで置換することができた。

SELECT REPLACE(xxxx ,'\r\n','') FROM test;
  • カンマ(,)

カンマ(,)の時も同様。

SELECT REPLACE(xxxx, ',', '') FROM test;
  • カンマと改行を同時に置換したい。

入れ子にすれば同時に対処することができた。

SELECT REPLACE(REPLACE(xxxx,'\r\n',''), ',', '') FROM test;

参考URL

Removing carriage returns in Mysql DB - Stack Overflow