基本的なユーザーテーブルをCSVに変換する
シンプルなSQL CREATE TABLEとINSERT INTOをCSV形式に変換します。カラム名の抽出と基本的な値の解析を解説します。
Basic Extraction
詳細な説明
SQLからスプレッドシート対応データへ
SQLからCSV変換の最も一般的な使用例は、シンプルなテーブル定義とインサート文からデータを抽出することです。CREATE TABLEと対応するINSERT INTO文がある場合、ツールはテーブル定義からカラム名をマッピングし、各行タプルから値を抽出します。
SQLの例
CREATE TABLE users (
id INTEGER PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(255) NOT NULL,
age INTEGER
);
INSERT INTO users (id, name, email, age) VALUES
(1, 'Alice', 'alice@example.com', 28),
(2, 'Bob', 'bob@example.com', 35),
(3, 'Charlie', 'charlie@example.com', 22);
生成されるCSV
id,name,email,age
1,Alice,alice@example.com,28
2,Bob,bob@example.com,35
3,Charlie,charlie@example.com,22
動作の仕組み
- パーサーはまず
CREATE TABLE文を読み取り、カラム名の順序付きリストを構築します:id、name、email、age。 - 各
INSERT INTO ... VALUES行タプルが解析され、値はカラムリストに位置的にマッチングされます。 - 文字列値はシングルクォートが除去され、エスケープシーケンスが解決されます。
- 出力CSVにはデフォルトでヘッダー行が含まれ、続いてデータタプルごとに1行出力されます。
このアプローチはスキーマで定義された元のカラム順序を保持するため、INSERTのカラムリストが異なる順序であっても、CSVは予測可能で一貫性があります。
ユースケース
ExcelやGoogle Sheetsでレビューするために、データベースマイグレーションスクリプトからユーザーデータをエクスポートする。シードデータの監査やQAチーム向けテストデータセットの準備でよく使われます。