データ分析初心者必見!SQLite から CSV ファイルへのデータ書き込み
SQLite から CSV ファイルへのデータ書き込み
SELECT ... INTO OUTFILE を使用する
この方法は、SQLite の組み込み機能を使用して、クエリ結果を直接 CSV ファイルに書き出すことができます。
SELECT * FROM テーブル名 INTO OUTFILE 'ファイル名.csv';
例:
SELECT * FROM customers INTO OUTFILE 'customers.csv';
このクエリは、customers
テーブルのすべてのデータを customers.csv
というファイルに書き出します。
Python スクリプトを使用して、SQLite データベースからデータを取得し、CSV ファイルに書き出すことができます。
必要なライブラリ:
sqlite3
csv
コード例:
import sqlite3
import csv
# データベースへの接続
conn = sqlite3.connect('database.sqlite')
# クエリの発行
cursor = conn.cursor()
cursor.execute('SELECT * FROM テーブル名')
# CSV ファイルへの書き込み
with open('ファイル名.csv', 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow([column[0] for column in cursor.description])
writer.writerows(cursor.fetchall())
# 接続のクローズ
cursor.close()
conn.close()
import sqlite3
import csv
# データベースへの接続
conn = sqlite3.connect('database.sqlite')
# クエリの発行
cursor = conn.cursor()
cursor.execute('SELECT * FROM customers')
# CSV ファイルへの書き込み
with open('customers.csv', 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow([column[0] for column in cursor.description])
writer.writerows(cursor.fetchall())
# 接続のクローズ
cursor.close()
conn.close()
- 少量のデータを書き出す場合は、
SELECT ... INTO OUTFILE
を使用するのが簡単です。 - 大量のデータを書き出す場合や、複雑な処理が必要な場合は、Python スクリプトを使用するのがより柔軟です。
-- テーブル customers のすべてのデータを customers.csv に書き出す
SELECT * FROM customers INTO OUTFILE 'customers.csv';
-- テーブル orders の特定の列データを orders.csv に書き出す
SELECT order_id, customer_id, product_id, quantity FROM orders INTO OUTFILE 'orders.csv';
Python スクリプトを使用する
import sqlite3
import csv
# データベースへの接続
conn = sqlite3.connect('database.sqlite')
# クエリの発行
cursor = conn.cursor()
cursor.execute('SELECT * FROM テーブル名')
# CSV ファイルへの書き込み
with open('ファイル名.csv', 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow([column[0] for column in cursor.description])
writer.writerows(cursor.fetchall())
# 接続のクローズ
cursor.close()
conn.close()
import sqlite3
import csv
# データベースへの接続
conn = sqlite3.connect('database.sqlite')
# クエリの発行
cursor = conn.cursor()
cursor.execute('SELECT * FROM customers')
# CSV ファイルへの書き込み
with open('customers.csv', 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow([column[0] for column in cursor.description])
writer.writerows(cursor.fetchall())
# 接続のクローズ
cursor.close()
conn.close()
その他の方法:
- SQLite GUI ツールを使用する: SQLite データベースを管理できる GUI ツールはたくさんあり、その多くはデータを CSV ファイルに書き出す機能を備えています。
- コマンドラインツールを使用する:
sqlite3
コマンドラインツールを使用して、SELECT ... INTO OUTFILE
ステートメントを実行することができます。
SQLite から CSV ファイルへのデータ書き込み - 他の方法
これらのツールは、GUI を提供し、SQLite データベースから CSV ファイルへのデータ書き出しを簡単に行うことができます。
これらの Web サービスは、ブラウザ上で簡単に SQLite データベースから CSV ファイルへの変換を行うことができます。
sqlite csv