開発・デバッグ支援

SQLフォーマッター

SQL文を貼り付けるだけで読みやすく整形します。MySQL・PostgreSQL等の主要な方言に対応しています。

入力データはサーバーへ送信されませんインストール不要無料で使えます
整形結果は実行前に内容をご確認ください。選択した方言(dialect)と実際のSQLの構文が異なる場合、整形結果が意図しない形になったり、エラーになり整形できない場合があります。本ツールはSQLの構文チェック・実行・最適化を行うものではありません。

入力例

結果

SQLを入力して「整形」を押してください。

このツールでできること

SQLフォーマッターの主な機能です。

  • SQL文を読みやすく整形できます空白・改行・インデントを整えます
  • 6種類のSQL方言から選べます標準SQL・MySQL/MariaDB・PostgreSQL・SQLite・SQL Server・Oracle
  • キーワードの大文字小文字を選べます入力のまま・大文字・小文字
  • コメント・文字列リテラル・引用符付き識別子を保持します
  • 整形結果をワンクリックでコピーできます

使い方

SQLを整形する手順を説明します。

手順を見る
  1. SQL方言を選びます既定は「標準SQL(汎用)」です
  2. 整形したいSQLを入力します
  3. 「整形」を押します
  4. 結果を確認し、「コピー」でクリップボードへコピーします

こんなときに使えます

こんな場面でSQLフォーマッターが役立ちます。

利用シーンを見る
  • 1行になったSQLを読みやすくしたいとき
  • ログ出力されたSQLをすぐ確認したいとき
  • 長いSQLをレビューしやすく整えたいとき
  • `sql-in-clause-generator`で生成した長いIN句を整形したいとき

SQLフォーマッターの仕組みと注意点

詳しい解説を見る

対応するSQL方言について

標準SQL・MySQL / MariaDB・PostgreSQL・SQLite・SQL Server・Oracleの6方言に対応しています。選択した方言と実際のSQLの構文が異なる場合、整形結果が意図しない形になったり、エラーになり整形できない場合があります。「SQLなら何でも正しく整形できる」ツールではありません。

コメント・文字列リテラル・引用符付き識別子・bind parameterについて

行コメント(-- ...)・ブロックコメント(/* ... */)、文字列リテラルの内容、"..."・`...`・[...]等の引用符付き識別子、?・$1・:id・@id等のbind parameterは、空白・改行・インデントの変更以外では内容を変更しません。

キーワードの大文字小文字(UPPERCASE)について

既定(入力のまま)では、SQLキーワードの大文字小文字を変更しません。「大文字(UPPERCASE)」を選択すると、SQL中の予約語と同名の未クォート識別子(テーブル名・カラム名等)も大文字化される場合があります。識別子の大文字小文字を区別するDB環境では、意図しない参照違いが起こり得るためご注意ください。

本ツールは構文チェック・実行・最適化を行うものではありません

本ツールが行うのは空白・改行・インデント(および選択した場合のキーワードの大文字小文字)の整形のみです。SQLの構文が正しいかどうかのチェック、SQLの実行、SQLの最適化は行いません。整形結果は実行前に必ず内容をご確認ください。

よくある質問

このツールでSQLが正しく動くことは保証されますか?

いいえ。本ツールは構文チェック・実行・最適化を行うものではなく、空白・改行・インデントの整形のみを行います。整形結果は必ず実行前にご確認ください。

キーワードを大文字にすると何が変わりますか?

キーワードの大文字小文字で「大文字(UPPERCASE)」を選択すると、SQL中の予約語と同名の未クォート識別子(テーブル名・カラム名等)も大文字化される場合があります。識別子の大文字小文字を区別するDB環境では、意図しない参照違いが起こり得るためご注意ください。

どのSQL方言を選べばよいですか?

実際に使用するDB製品に近い方言を選んでください。方言と実際のSQLの構文が異なると、整形結果が意図しない形になったり、エラーになり整形できない場合があります。迷う場合は「標準SQL(汎用)」をお試しください。

入力したSQLはサーバーへ送信されますか?

いいえ。整形処理はすべてブラウザ内で完結しており、入力内容がサーバーへ送信されることはありません。