3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【MySQL】SELECT結果をダブルクォーテーション付きCSVファイルに出力する方法

Posted at

はじめに

MySQLのSELECT結果をダブルクォーテーションなしで出力すると、Excelで開いた時にズレることがあるので、ダブルクォーテーション付きCSVファイルに出力する方法を備忘として残しておきます。

コマンド

mysql -u {user} -p {DB} -h {host} -e "select文" | sed -e 's/\t/","/g;s/^/"/;s/$/"/' > /tmp/test.csv

【sed部分の説明】
sed -e 's/\t/","/g;s/^/"/;s/$/"/'

  • -eオプション:指定したスクリプト(条件式)で変換処理を行う
  • s/\t/","/g:全てのタブを「ダブルクォーテーション-カンマ-ダブルクォーテーション(",")」に置換
  • s/^/"/:行頭にダブルクォーテーション付与
  • s/$/"/:行末にダブルクォーテーション付与

おわりに

出力ファイル内にマルチバイト文字が含まれているとExcelで開いた時に文字化けする(文字コードがUTF-8の場合)ので、適宜文字コード変換すること。

3
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?