SQL整形ツール

SQLクエリを貼り付けると、キーワードが大文字化されたきれいなインデント付きのバージョンが即座に得られます。

機能

キーワードを大文字化
複数の SQL 方言に対応
インデント幅を調整

使い方

1. 入力欄にSQLクエリを貼り付けます。

2. 必要に応じてSQL方言を選択します。

3. 「整形」をクリックして結果をコピーします。

このツールについて

ログ、ORM、監視ツールからコピーしたクエリはたいてい1行に詰まっていて、結合や条件を追いにくいものです。このフォーマッターは SQL をトークンに分け、SELECT、FROM、WHERE、JOIN、GROUP BY、ORDER BY、LIMIT などの主な句をそれぞれ独立した行に置き、その下の部分をインデントし、キーワードを大文字にしてテーブル名や列名と区別しやすくします。文字列、引用符付きの識別子、コメントはそのまま残ります。MySQL、PostgreSQL、SQLite、SQL Server などに共通する標準的な SQL 構文で使え、データベースへの接続は不要です。整形は見た目だけの変更で、クエリの検証も意味の変更もしないので、エラーの確認はデータベースで実行して行ってください。

よくある質問

どの SQL 方言に対応していますか?
標準的な SQL キーワードを認識するので、MySQL、PostgreSQL、SQLite、SQL Server、Oracle 向けのクエリはいずれもきれいに整形できます。製品固有の構文は、特別なインデントがなくても書いたとおりに残ります。
整形するとクエリの結果は変わりますか?
変わりません。変わるのは空白、改行、キーワードの大文字・小文字だけです。文字列、識別子、コメントは保持され、SQL のキーワードは大文字小文字を区別しないので、同じ結果が返ります。
SQL の構文エラーをチェックしますか?
しません。データベースに接続せず、文法全体も解析せずに整形します。列名のつづり間違いやカンマの抜けも正しい SQL と同じように整形されるので、クエリはデータベースやエディターで試してください。
キーワードを大文字にするのはなぜですか?
キーワードを大文字にするのは広く使われている慣習で、SQL の命令とテーブル名・列名を一目で見分けられます。データベースは SELECT と select をまったく同じに扱います。
実データを含むクエリを貼り付けても安全ですか?
整形はブラウザー内で行われ、クエリはどこにも送信されません。ただし習慣として、クエリを他人と共有する前には、パスワード、トークン、個人情報を取り除いてください。

関連ツール