ハマログ

株式会社イーツー・インフォの社員ブログ

MySQLのSELECT結果をCSV出力

MySQLのSELECT結果をCSV出力するには以下のようにSELECT文に「INTO OUTFILE」を記述すればよいとのことです

SELECT * FROM users INTO OUTFILE 'example_users.csv';

試してみたところ以下の通りエラーとなってしまいました
ユーザにPROCESS権限がないとダメなようです

mysql -u user1 -p example_db
MySQL [example_db]> SELECT * FROM users INTO OUTFILE 'example_users.csv';
ERROR 1227 (42000): Access denied; you need (at least one of) the FILE privilege(s) for this operation

そこでベタな方法ですがSELECT結果(TSV出力)のタブ区切りをカンマ区切りに変換することで解決しました

echo 'SELECT * FROM `users`' | mysql -u user1 -p example_db | tr '\t' ',' > example_users.csv
CSVmysql

  yama   2024年1月25日


関連記事

QAエンジニア向けイベントに行ってきました!

どうもーyasuです~ 寒くなりました。コートを用意しないとー まず一つご報告。…

laravelのバッチを実行する

こんばんはいけしまです。いそがしいいそがしいと言ってブログの更新を思いっきり先送…

PhpStormで利用するPHPバージョンを選択する

久しぶりにPhpStormで開発環境を参照したら、PHPのバージョンが古くてエラ…


← 前の投稿

次の投稿 →