MySQLで列見出しを1行目としてデータをCSVファイルにエクスポートする方法
UNION句を使って列見出しを追加する
MySQLからCSVファイルへデータをエクスポートする際、1行目に列見出し(ヘッダー)を含めたい場合はUNION句を利用します。これは、列名を文字列リテラルとして選択するSELECT文と、実際のデータを取得するSELECT文を結合することで実現できます。以下の例で具体的な手順を見ていきましょう。
実行例
この例では、テーブル「student_info」のデータをCSVファイルにエクスポートします。CSVファイルの1行目には、各列の名前が出力されるように設定しています。
mysql> (SELECT 'id', 'Name', 'Address', 'Subject') UNION (SELECT id, Name, Address, Subject FROM student_info INTO OUTFILE 'C:/mysql/bin/mysql-files/student_25.CSV' FIELDS ENCLOSED BY '"' TERMINATED BY ';' ESCAPED BY '"' LINES TERMINATED BY '\r\n'); Query OK, 7 rows affected (0.04 sec)
上記のクエリを実行すると、MySQLは「Student_25.CSV」というファイルを作成します。生成されたファイルの中身は以下のようになり、1行目に列見出しが正しく出力されていることが確認できます。
id; "Name"; "Address"; "Subject" 101; "YashPal"; "Amritsar"; "History" 105; "Gaurav"; "Chandigarh"; "Literature" 125; "Raman"; "Shimla"; "Computers" 130; "Ram"; "Jhansi"; "Computers" 132; "Shyam"; "Chandigarh"; "Economics" 133; "Mohan"; "Delhi"; "Computers"
構文のポイント解説
- ヘッダー行の追加: 最初のSELECT文で列名を文字列として指定することで、結果セットの先頭行がヘッダー行になります。
- INTO OUTFILE: クエリ結果を指定したパスのファイルに出力します。システム変数 secure_file_priv の設定によっては、書き込み可能なディレクトリが制限される場合があるため注意してください。
- FIELDS ENCLOSED BY '"': 各フィールドの値を二重引用符で囲みます。
- TERMINATED BY ';': フィールド間の区切り文字をセミコロンに設定します。カンマ区切りの一般的なCSVにしたい場合は「','」に変更してください。
- LINES TERMINATED BY '\r\n': 行末の改行コードをCRLFに設定します。Windows環境で開く際の互換性が向上します。
-
CSVファイルを列ごとにExcelへ変換する5つの方法を徹底解説
本記事では、複数の列を持つデータを含むCSVファイルをExcel形式(.xlsx)に変換する方法を、5つのアプローチから詳しく解説します。CSVファイルはテキストエディタなどのシンプルなアプリケーションで手軽に開けるため、データを受け取る際によく使われる形式です。しかし、その後の計算処理や見やすいデータ表示のためには、Excelファイルへの変換が必要になることも少なくありません。この記事を読めば、初心者の方でも迷わず変換作業を進められるようになります。 そもそもCSVファイルとは? CSVは「Comma-Separated Values(カンマ区切り値)」の略で、データがカンマで区切られたプ
-
【保存版】コマンドラインでCSVをXLSXに変換する方法|初心者向け簡単8ステップ
CSVファイルをExcelファイル(.xlsx、.xlsm)に変換する方法はいくつかありますが、Windowsのコマンドラインを使えば追加ソフトなしで手軽に実行できます。さらに、VBSスクリプトを組み合わせれば、データをExcelファイルへ出力する際に、列幅の自動調整やヘッダーの装飾といった細かい編集もまとめて行えます。この記事では、WindowsコマンドラインでCSVをXLSXに変換する方法を8つのステップでわかりやすく解説します。コマンドラインでCSVをXLSXに変換する8つの簡単なステップ全体の流れは次のとおりです。まずメモ帳にVBS(Visual Basic Script)コードを入力