SQL フォーマッター

MySQL、PostgreSQL、SQL Server、Oracle、BigQuery など 16 種類の方言の SQL クエリを整形。キーワードの大文字・小文字とインデントを選べます。処理はブラウザ内で完結します。

出力

すべてブラウザ内で実行されます。データがアップロードされることはありません。

関連ツール

すべて表示

SQL フォーマッターとは?

SQL フォーマッターは、各句を独自の行に置いてその内容をインデントし、長いクエリを読みやすく書き直します。方言を選ぶと、ベンダー固有の構文(バッククォート、:: キャスト、TOP、QUALIFY など)が理解され、キーワードを大文字、小文字、そのままから選べます。

SQL フォーマッターの使い方

  1. SQL 方言 を選びます(たとえば MySQL や PostgreSQL)。
  2. キーワードの大文字・小文字 と インデント を選びます。
  3. クエリを入力欄に貼り付けます。
  4. 整形 をクリックし(入力中も出力は更新されます)、結果をコピーします。

例

入力
select id,name from users where active=1 order by name
出力
SELECT
  id,
  name
FROM
  users
WHERE
  active = 1
ORDER BY
  name

方言は MySQL、キーワードは大文字、スペース 2 つ。

SQL フォーマッターを使うべき場面

ログや ORM から出たクエリの読み取り、コードレビューやドキュメント用の SQL の準備に使います。テーブル名や列名の検証も、何かの実行も行いません。手続き型のコード(PL/SQL ブロック、T-SQL のプロシージャ)は、ベストエフォートで整形されます。

SQL フォーマッターの仕組み

整形は sql-formatter ライブラリが行います。選択した方言の規則(引用符、コメント、パラメータ、演算子)でクエリをトークン化し、句と式に解析して、SELECT、FROM、WHERE、JOIN、GROUP BY などの句を、項目をインデントした上で別々の行に出力します。キーワードの大文字・小文字は予約語にだけ適用され、識別子や文字列リテラルは変更されません。解析エラーでは行と列が表示されます。

一般的な使用例

  • アプリケーションのログにある長い 1 行のクエリを読む
  • ORM が生成した SQL を整形する
  • コードレビューの前にキーワードを大文字にする
  • ドキュメント用に読みやすい SQL を用意する

セキュリティ注意事項

すべてブラウザ内でローカルに処理され、貼り付けたコードがアップロードされることはありません。

よくある質問

どの方言に対応していますか?

標準 SQL、MySQL、MariaDB、PostgreSQL、SQLite、SQL Server(T-SQL)、Oracle PL/SQL、BigQuery、Snowflake、Redshift、Spark、Hive、Trino、DuckDB、ClickHouse、Db2 です。

識別子は変更されますか?

いいえ、指定した場合にキーワードの大文字・小文字が変わるだけです。

テーブルが存在するか確認しますか?

いいえ、テキストを整形するだけです。

おすすめの次のステップ

他のカテゴリを見る