logo
GeekFormat

JSON SQL 変換

バックエンドエンジニア、データアーキテクト、DBAのために開発された、ログイン不要の工業級オンライン JSON SQL 変換プラットフォーム。MySQL、PostgreSQL(JSONB 対応)、SQLite、SQL Serverの方言に完全対応。内蔵されたグローバル型推論エンジンにより、大容量の JSON オブジェクト配列を数ミリ秒で高スループットな一括バルク INSERT 文と最適な CREATE TABLE スクリプトに逆コンパイルします。ネスト構造の平坦化(Flatten)と JSONB 構造の文字列シリアライズの切り替えを自在に行え、APIレスポンスの高速入庫、モックデータによるテスト環境構築、ログ解析の効率を極限まで高める開発者必携の効率化ツールです。

関連おすすめ

ユースケース

  • サードパーティの Webhook や API レスポンス、ELK などのゲートウェイログから収集した非構造化 JSON データを、リレーショナルデータベースに一括インポートするためのクレンジング処理。
  • フロントエンドチームから共有された Mock JSON データをベースに、関係データベースの設計規範に準拠した DDL テーブル定義スクリプトをリバースエンジニアリングで自動生成。
  • QAの自動化パフォーマンステストや負荷検証環境向けに、数万件のランダムなレコードを含んだ一括 SQL INSERT スクリプト(初期流し込みデータ)を高速作成。
  • 多層階層を持つ複雑な業務オブジェクトデータを、再帰的な平坦化(Flatten)機構を利用して、SQLで直接クエリしやすいフラットな2次元テーブル構造にダウングレード・クレンジング。

特徴

  • 一括マルチバリュー挿入(Bulk Insert)最適化:数千件のレコードを単一の Extended INSERT 文に統合。トランザクションのオーバーヘッドを劇的に削減し、書き込み効率を最大20倍に高めます。
  • グローバル縦方向スキャン型推論:全データを包括的に解析し、TINYINT、BIGINT、VARCHAR(N)、TEXT、TIMESTAMP などの最適なデータ型へ精密にマッピングします。
  • DDL(CREATE TABLE)スクリプトの自動構築:主キー(Primary Key)の設定や、NULL / NOT NULL 制約の自動検知を含んだ完成度の高いテーブル定義スキーマを生成します。
  • 高度な階層構造の平坦化(Flatten):複雑なネストをアンダースコア接続で2次元の表に解体する手法と、JSONB/JSON 列用に文字列シリアライズする手法の双方をサポート。
  • 外部通信なしの完全ローカルサンドボックス:すべての計算がブラウザ内で完結するため、企業のセキュリティ監査や機密情報保護のポリシー(データ資産の上雲制限)に完全準拠します。

使い方

  1. 解析対象の生の JSON 配列を左側の高機能エディタに貼り付けるか、ローカルの `.json` ファイルをパネル内にドラッグ&ドロップしてローカルメモリに読み込ませます。
  2. 設定パネルで目的の対象データベース(MySQL/PostgreSQL/SQLite/SQL Server)を選択し、建表 DDL の有無やネストオブジェクトの平坦化(Flatten)オプションを指定します。
  3. 右側の高スループット出力パネルで、リアルタイムに逆コンパイルされた標準的かつ高速な `CREATE TABLE` および一括バルク `INSERT INTO` 実行スクリプトを確認します。
  4. 「SQLをコピー」ボタンをクリック、または「.sql ファイルをダウンロード」して、DBeaver、Navicat、DataGrip、あるいは CLI 端末からそのままデータベースへインポートを実行します。

よくある質問

MySQL、PostgreSQL、SQLite、SQL Server 間の厳格な構文やエスケープ規則の違いはどのように処理されますか?

本ツールには専用の「SQL方言コンパイラ(SQL Dialect Compiler)」が組み込まれており、各RDBMSの下層仕様の違いを自動で識別・吸収します。MySQL用のバッククォート(`)付与やブーリアン値の1/0マッピング、SQL Server用の角括弧([])、PostgreSQL固有のシングルクォートエスケープやタイムゾーン対応のタイムスタンプ(TIMESTAMPTZ)、`JSONB` 型へのマッピングを正確に行います。また、文字列内の特殊文字(単一引用符 `'` を `''` にエスケープ等)も厳密に処理し、構文エラーを防ぎます。

内蔵された型推論エンジンは、どのように JSON データをスキャンして最適な CREATE TABLE DDL を決定するのですか?

最初の1レコードしか見ない簡易的な変換ツールとは異なり、GeekFormatは投入された JSON 配列全体を縦方向に全件スキャンするアルゴリズムを採用しています。全要素のキーと値を検証し、数値であれば `INT` や `BIGINT`、高精度な実数であれば `DECIMAL` を判別。文字列であれば全レコードにおける最大文字数を動的に計算し、安全なバッファを持たせた最適な `VARCHAR(N)` や `TEXT` 型を割り当てます。NULL/NOT NULL 制約も自動検出し、実用的な DDL を出力します。

深くネストされた JSON オブジェクトや複雑な多次元配列は、どのように関係データベースの列に平坦化されますか?

階層構造を持つ複雑なデータに対して、2つの強力なアプローチを提供します。1. **再帰的平坦化(Recursive Flattening)**: ネストされたパスをアンダースコアで連結し、2次元のフラットな列名に展開します(例:`{"meta": {"user_id": 1}}` は `meta_user_id` 列に変換)。2. **JSON構造のシリアライズ**: 子オブジェクトや配列の階層構造を維持したまま標準の JSON 文字列として圧縮し、データベースの `JSON` 列や PostgreSQL のバイナリ最適化された `JSONB` 列に直接格納できるよう変換します。

数万件に及ぶ大規模な JSON データの変換において、ブラウザの処理性能やセキュリティ上のリスクはありますか?

性能面では、レコードを1件ずつ個別に生成するのではなく、マルチバリュー対応の一括挿入(Bulk/Extended Insert)構文 `INSERT INTO table VALUES (...), (...);` を生成するため、データベースへの書き込みスループットを最大20倍向上させます。セキュリティ面では、GeekFormatは完全なゼロトラストアーキテクチャ(Zero-Trust Architecture)を採用しており、100% ブラウザのローカル・サンドボックス内(クライアントサイド)で処理を実行します。機密データやログが外部サーバーに送信されることは一切ありません。