rakuishi.com

SQLite3 でデータを CSV, html のテーブルタグ形式でエクスポートする

SQLite3 で、データを CSV 形式、および html のテーブルタグ形式で出力する方法を紹介します。ここでは、Mac の Terminal で操作しています。

SQLite3 でデータを CSV 形式でエクスポートする

普通に SELECT した場合はこのようにデータが表示されます。

sqlite> SELECT * FROM data LIMIT 3;
0600000|ほっかいどう|さっぽろしちゅうおうく||北海道|札幌市中央区|
0640941|ほっかいどう|さっぽろしちゅうおうく|あさひがおか|北海道|札幌市中央区|旭ケ丘
0600041|ほっかいどう|さっぽろしちゅうおうく|おおどおりひがし|北海道|札幌市中央区|大通東

.mode コマンドを使用して、CSV 形式で吐き出すようにしたのが以下になります。コンマ区切りになり、文字列は、ダブルクォーテーションで囲まれています。

sqlite> .mode csv
sqlite> SELECT * FROM data LIMIT 3;
0600000,"ほっかいどう","さっぽろしちゅうおうく","","北海道","札幌市中央区",""
0640941,"ほっかいどう","さっぽろしちゅうおうく","あさひがおか","北海道","札幌市中央区","旭ケ丘"
0600041,"ほっかいどう","さっぽろしちゅうおうく","おおどおりひがし","北海道","札幌市中央区","大通東"

次は、html のテーブルタグ形式で出力するようにしたのが以下になります。これを <table> で囲めばテーブル化されます。

sqlite> .mode html
sqlite> SELECT * FROM data LIMIT 3;
<TR><TD>0600000</TD>
<TD>ほっかいどう</TD>
<TD>さっぽろしちゅうおうく</TD>
<TD></TD>
<TD>北海道</TD>
<TD>札幌市中央区</TD>
<TD></TD>
</TR>
<TR><TD>0640941</TD>
<TD>ほっかいどう</TD>
<TD>さっぽろしちゅうおうく</TD>
<TD>あさひがおか</TD>
<TD>北海道</TD>
<TD>札幌市中央区</TD>
<TD>旭ケ丘</TD>
</TR>
<TR><TD>0600041</TD>
<TD>ほっかいどう</TD>
<TD>さっぽろしちゅうおうく</TD>
<TD>おおどおりひがし</TD>
<TD>北海道</TD>
<TD>札幌市中央区</TD>
<TD>大通東</TD>
</TR>

また、SELECT した結果を出力したい場合は、以下のように output すればよいです。

sqlite> .output output.txt
sqlite> SELECT * FROM data LIMIT 3;

参考:.mode コマンド - SQLite コマンドの使い方 - SQLite 入門