旅するえんじにあ - Engineers to Travel -

旅するエンジニアの気まま備忘録

【MySQL】SELECTした内容をcsvファイルに出力する

障害の対応やバグ対応で歯抜けになったデータを調べたり ユーザの状況を特定のSELECTを発行してCSVに出力したり そのCSVファイルをグラグにしたり。

何かとMySQLでSELECTした内容を使う事が多いのでメモ。

チームやプロジェクトによってはGUIツールが使えない事があってコマンドで出力する方法を調べてみた。

/tmp以下のディレクトリにhoge.csvとしてSELECTした内容を出力したいとき。

SELECT * FROM [tabel_name] WHERE [検索条件]
INTO OUTFILE '/tmp/hoge.csv'
FIELDS TERMINATED BY ',' 
OPTIONALLY ENCLOSED BY '"';

これで/tmp以下にhoge.csvが出力される。

但し、既に/tmp以下にhoge.csvが存在する場合はエラーとなります。

ERROR 1086 (HY000): File '/tmp/hoge.csv' already exists

ローカル保存したらscpするなりFTPで落とすなりして加工していきましょう。