MySQLでCSVファイルの入出力

2011年5月11日

MySQLにはmysqldumpというダンプツールがあるが、CSVファイルでデータを出力できると、加工もしやすい。

また、CSV出力時には基本、SQL構文での出力となるため、条件指定も容易になる。

書き方としては

SELECT
  *
FROM
  areas
ORDER BY
  id
INTO OUTFILE
  "/home/user/areas.csv"
FIELDS
  TERMINATED BY ','
  ENCLOSED BY '"'
  ESCAPED BY '\\'
LINES
  TERMINATED BY '\r\n'

FIELDSオプション

  • TERMINATED BY
    項目の区切り文字を指定する
  • ENCLOSED BY
    項目を囲む文字(たとえばダブルクォーテーション)
  • ESCAPED BY
    エスケープする文字を指定(¥マークが一般的)

LINESオプション

  • TERMINATED BY
    行の末端記号(\r\n or \n)

MySQL,SQLCSV,MySQL,SQL

Posted by GENDOSU