SQL フォーマッター
SQL クエリを適切なインデントとキーワードハイライトで整形・美化。SQL の圧縮にも対応。すべてブラウザ内で処理。
フォーマット済み SQL がここに表示されます...
SQL フォーマッターの使い方
SQL を貼り付け
SQL クエリを入力エリアに入力または貼り付けてください。
フォーマットまたは圧縮
フォーマットで読みやすい出力、圧縮でコンパクトな出力を取得できます。
結果をコピー
フォーマットまたは圧縮された SQL をクリップボードにコピーしてください。
SQL フォーマットとは
SQL フォーマット(SQL の美化や整形とも呼ばれます)は、SQL コードを読みやすくするために再構成するプロセスです。適切なフォーマットには、一貫した句のインデント、キーワード周りの改行、標準化された大文字小文字の使用が含まれます。
フォーマットのメリット
読みやすさの向上
フォーマットされた SQL は理解しやすくデバッグも容易
より良いコラボレーション
統一されたスタイルでチームの作業効率が向上
保守が容易
フォーマットされたクエリは変更や拡張がシンプル
よくある質問
フォーマッターは標準 SQL 構文で動作し、MySQL、PostgreSQL、SQLite、SQL Server、Oracle SQL と互換性があります。SELECT、FROM、WHERE、JOIN、GROUP BY、ORDER BY などの一般的なキーワードを処理します。
いいえ、このツールはフォーマットと美化に特化しています。SQL が構文的に正しいか、データベースで正常に実行されるかの検証は行いません。
圧縮は SQL から不要な空白、改行、コメントを削除し、コードへの埋め込みやデータ転送サイズの削減に適したコンパクトな1行バージョンを生成します。
標準の読み書きステートメント(SELECT、INSERT、UPDATE、DELETE)に加えて、DDL(CREATE TABLE、ALTER、DROP)、CTE(WITH ... AS)、OVER (PARTITION BY ...) を用いたウィンドウ関数に対応しています。JOIN キーワードとその ON 句には専用のアライメントが適用され、結合条件が対応する JOIN の下に揃って表示されます。
いいえ。フォーマッターは空白とキーワードを認識しつつ意味を保持します。文字列リテラル、識別子、値は一切変更されないため、実行プランは同一のままです。圧縮では意味のない空白とコメントのみを削除します。ただし、コメントに埋め込まれたオプティマイザーヒントには注意が必要です。コメントを削除するとヒントも失われるため、圧縮済み SQL は転送用として使い、編集可能な原本としては整形版を維持してください。
いずれも ANSI SQL を起源としますが、各エンジンは独自の構文を追加しています。PostgreSQL には RETURNING と DISTINCT ON があり、MySQL はバッククォートの識別子と LIMIT n を使用し、SQL Server は TOP n と角括弧を使用し、SQLite は緩い型アフィニティの仕組みで知られています。フォーマッターは共通構文に対しては方言に依存しない動作を保ち、エンジン固有の構文はそのまま保持します。
各 JOIN キーワードは新しい整列ブロックを開始し、その ON 句や USING 句は下にインデントされます。相関サブクエリには追加のインデントレベルが与えられ、ネストの深さが一目でわかります。CTE の本体は、WITH のラッパー内でトップレベルのステートメントのように整形されます。
SQL を1行に圧縮すると、意味のない空白とコメントが削除され、ステートメントが1行の文字列として扱われるケースに適しています。具体的には、ORM のデバッグ出力、ログの解析、コードに埋め込まれた SQL、管理ツールでの URL 転送などです。あくまで転送時の利便性のためのものであり、編集可能な原本としては整形済みバージョンを維持してください。
関連ツール
権威ある参考文献
このツールの根拠となる一次資料です。二次的な要約ではなく、公式の標準規格と仕様に基づいています。