OpenReplay Logo
12k
12k

SQL フォーマッター

主要なすべての方言に対応してSQLを整形、ビューティファイ、ミニファイします。ブラウザ上でローカルに処理されるため、クエリがマシンの外に出ることはありません。

キーワードの大文字・小文字
ローカルで処理されます

このツールについて

SQLフォーマッターは、クエリの動作を変えずに、空白、インデント、キーワードの大文字小文字を正規化します。SQLをトークンに解析し、一貫した改行と2スペースのインデントで再出力するため、SELECT、JOIN、WHERE、GROUP BYといった句が予測どおりに揃います。本ツールは標準SQLに加えて、PostgreSQL、MySQL、SQLite、BigQuery、Snowflake、SQL Serverの方言固有のルールに対応し、キーワードをUPPER、lowerに強制したり、元の大文字小文字を保持したりできます。

ORMのログからコピーした1行のクエリを整えたり、生成された密な文をプルリクエストでレビューできるようにしたり、チームのSQLファイル全体で大文字小文字を統一したりするのにお使いください。Minifyボタンはその逆を行い、整形されたクエリを1行に折りたたんでコメントを取り除く一方で、引用符で囲まれた文字列の内容はそのまま残します。これは、コンパクトなクエリを設定値やコード文字列に貼り付けるのに便利です。

整形は空白と大文字小文字を並べ替えるだけで、実際のスキーマに対してクエリが正しいかを検証することは決してありません。またミニファイは、引用符で囲まれた文字列リテラル内の間隔を意図的に保持します。

よくある質問

このフォーマッターはどのSQL方言に対応していますか?

標準SQL、PostgreSQL、MySQL、SQLite、BigQuery、Snowflake、SQL Server(Transact-SQL)に対応しています。各方言は独自のキーワードと構文のルールを適用するため、出力はそのエンジンの慣例に一致します。

整形すると私のSQLクエリの動作が変わりますか?

いいえ。整形は空白、インデント、キーワードの大文字小文字を調整するだけで、クエリのトークンとロジックは変わらないため、整形されたクエリは元のものと同一に実行されます。

SQLをミニファイすると、文字列値の内側のスペースが取り除かれますか?

いいえ。ミニファイは引用符で囲まれた文字列の外側でのみ空白を折りたたみコメントを取り除くため、'a b' のようなリテラルは内側のスペースを保持し、埋め込まれたコメントのようなテキストもそのまま残されます。