【MySQL】SQLからデータをCSVにエクスポート/インポートする方法

MySQLのデータをCSVに出力する方法と、CSVの内容を読み込んでDBに投入する方法を紹介します。

CSVに出力(エクスポート)する方法

以下のように、データベースと出力ファイルを指定すれば出力されます。

select * from database 
  into outfile "[ファイルパス/ファイル名.csv]" 
  fields terminated by ',';

区切りの改行コードを指定するには、「LINES TERMINATED BY」で指定します。
ダブルクォーテーションで囲まれたデータの入出力をするには、「ENCLOSED BY ‘”‘」を付加してください。

select * from database 
  into outfile "[ファイルパス/ファイル名.csv" 
  fields terminated by ',' 
  enclosed by '"' 
  lines terminated by '\r\n';

 

CSVから入力(インポート)する方法

以下のように、入力ファイルとデータベースのテーブルを指定すれば入力できます。

load data local infile "[ファイルパス/ファイル名.csv]" 
  into table [テーブル名] fields terminated by ',';

エクスポートの時と同様、区切りの改行コードを指定にはLINES TERMINATED BY」を、ダブルクォーテーションで囲まれたデータの入出力には「ENCLOSED BY ‘”‘」を付加してください。

-- 文字コードを指定する場合は事前に以下のSQLを実行
mysql> set character set sjis;

mysql> load data local infile "[ファイルパス/ファイル名.csv]" 
  into table [テーブル名] fields terminated by ',' 
  ENCLOSED BY '"' 
  LINES TERMINATED BY '\r\n'

 



投稿日:2018-10-08    更新日:2019-04-09

[スポンサーリンク]

  
サイト内検索
プロフィール

プロフィール

[Name : じゃぶじゃぶ(@jbjb_2019)]
都内で社内SEをしているおじさん。
仕事で得られる知識だけでは限界を感じ、 WEBの勉強がてらITブログを開始。
サーバからWEBサイトまでフルスクラッチで開発しました。
現在は勉強のモチベーションを保つために活用中。
興味があることを雑記的に書いていきます。

[スポンサーリンク]

[スポンサードリンク]