JSONをSQL INSERTに変換
JSONのオブジェクト配列をSQLのINSERT文に変換します。MySQL・PostgreSQL・SQLite・SQL Server・Oracle向けにCREATE TABLEも出力でき、入れ子の値にも対応します。
オブジェクトにないキーはNULLとして挿入されます。
| 列 | 型 | 検出された値 | NULL/欠損 |
|---|---|---|---|
| id | INTEGER | 整数 | 0 |
| name | VARCHAR(12) | テキスト | 0 |
| active | BOOLEAN | true/false | 0 |
| balance | NUMERIC(6,2) | 小数 | 1 |
| joined | DATE | 日付 | 0 |
| tags | JSONB | JSON | 1 |
| address | JSONB | JSON | 1 |
APIのレスポンス、エクスポートしたデータ、テスト用データはJSONで渡されることが多い一方、データベースに入れるにはSQLが必要です。オブジェクトの配列を貼り付けると、複数行をまとめたINSERT文と、値から推定した列の型(整数、適切な精度の小数、真偽値、日付、テキスト、JSON)を持つCREATE TABLE(任意)を生成します。キーのないオブジェクトはNULLになり、入れ子のオブジェクトや配列はJSONとして保存するか、ドット区切りの名前の列に展開できます。識別子・文字列・真偽値は、MySQL・PostgreSQL・SQLite・SQL Server・Oracleそれぞれに合った形式で出力されます。
使い方
- オブジェクトのJSON配列を貼り付けます(オブジェクト1つや {"data": […]} の形式でも使えます)。
- テーブル名を入力し、データベースを選びます。
- 入れ子のオブジェクトをJSON列にするか、列に展開するかを選びます。
- 必要に応じてCREATE TABLE・DROP TABLEを含めるか、upsert用のキーを指定します。
- SQLをコピーします。
計算式
列 = いずれかのオブジェクトにあるすべてのキー(最初に現れた順) · オブジェクトごとにVALUESのタプルを1つ · キーがない → NULL
型は値に従います。整数はINTEGER(±2,147,483,647を超えるとBIGINT)、その他の数値は桁数から決めたDECIMAL(p,s)、true/falseはBOOLEAN(真偽値型がないDBではBIT、NUMBER(1)、または1/0)、すべて有効な日付であるISO形式の日付文字列はDATEまたはTIMESTAMP、その他の文字列はVARCHAR(最長の長さ)またはTEXT、オブジェクトと配列はJSON・JSONB・NVARCHAR(MAX)・CLOBになります。種類が混在する列はテキストになります。文字列中の単一引用符は2つ重ね、MySQLではバックスラッシュも2つ重ねます。
計算例
サンプルの顧客3人からは、id INTEGER、name VARCHAR(12)、active BOOLEAN、balance NUMERIC(6,2)、joined DATE、tags JSONB、address JSONBの列を持つCREATE TABLE "customers"と、3行のINSERT文が1つ生成されます。O'Brienは'O''Brien'と書かれ、Linにないtagsとaddress、nullのbalanceはNULLになり、Adaのaddressは'{"city":"London"}'として保存されます。
よくある質問
オブジェクトごとにキーが違う場合はどうなりますか?
どこかのオブジェクトに現れるキーはすべて列になり、最初に現れた順に並びます。そのキーを持たないオブジェクトにはNULLが入ります。
展開とJSON列のどちらがよいですか?
入れ子のフィールド(address.city)で絞り込みや結合をするなら展開してください。構造がバラバラな場合や、保存だけできればよい場合はJSONのままにします。配列は常にJSONとして保存されます。
非常に大きな数値でも安全ですか?
9,007,199,254,740,991までの整数は正確に扱えます。それより大きなIDはJavaScriptベースのツールでは桁が失われるため、JSONで引用符で囲んで文字列のまま保持してください。
データはアップロードされますか?
いいえ。SQLはブラウザ内で生成されます。
出典
最終更新:
この入力内容のページアドレス: https://kakao.mobile/ja/tools/json-to-sql-insert-tool/
このツールを引用する
kakaoCalc. (2026, November 8). JSONをSQL INSERTに変換. https://kakao.mobile/ja/tools/json-to-sql-insert-tool/
“JSONをSQL INSERTに変換.” kakaoCalc, 8 Nov. 2026, kakao.mobile/ja/tools/json-to-sql-insert-tool/.