ログ、ORM、同僚からのクエリを貼り付けると、各句が別の行になり、サブクエリが入れ子になり、好みの大文字小文字のキーワードで、きれいにインデントされて戻ってきます。または逆に、1行に詰めます。クエリは、この端末にとどまります。無料です。
SQLを整形する方法、手順ごとに
- クエリを「SQL」のボックスに貼り付けます。入力に合わせて、整ったバージョンが表示されます。
- 「整形」または「ミニファイ」を選んでください。
- 「キーワードの大文字小文字」(大文字、小文字、入力どおり)と「インデント」(スペース2つ、スペース4つ、タブ)を選びます。
- 長い列のリストを広げたい場合は、「1行に1列」をオンにします。
- 「SQLをコピー」または「.sqlをダウンロード」を押します。
整形されるもの
SELECT、FROM、WHERE、GROUP BY、HAVING、ORDER BY、LIMITは、それぞれ新しい行から始まり、その内容は、下にインデントされます。すべての種類のJOINは、FROMの下に揃い、ANDとORの条件は、それぞれの行になり、CASE式は、WHENごとにレイアウトされ、サブクエリとWITH句は、ブロックとしてインデントされます。INSERT、UPDATE、DELETE、CREATE TABLEにも対応し、1行に1つの列定義になります。
どのデータベースでも安全
フォーマッターが変更するのは、空白とキーワードの大文字小文字だけです。文字列、二重引用符、バッククォート、角括弧で囲まれた名前、$1、?、:nameのようなプレースホルダー、::intのようなPostgresのキャストは、書かれたとおりに残されるため、PostgreSQL、MySQL、SQLite、SQL Server、Oracle、BigQuery、Snowflakeのクエリのどれにも使えます。
ミニファイするタイミング
ミニファイは、コメントと余分なスペースを削除して、クエリを1行にします。ログの検索、環境変数、JSONのペイロード、クエリ文字列を作るコードに便利です。文字列内のスペースには、決して手を加えません。
SQLを整形する理由
- 読みやすいクエリは、レビューもデバッグもしやすくなります。
- 一貫したスタイルは、チームの助けになり、コードレビューを速くします。
- 結合条件の抜けや、括弧の位置のずれを、より早く見つけられます。
- 整ったサンプルは、チケット、ドキュメント、質問で共有しやすくなります。
スプレッドシートやデータベースファイルでクエリを実行するには、SQLプレイグラウンドを使ってください。JSONには、JSONツールを、他のコードには、コードフォーマッターをお試しください。
よくある質問
SQLが正しいかチェックしますか?
いいえ。レイアウトを整えるだけで、クエリを実行したり、データベースと照合したりはしません。
クエリはどこかに送信されますか?
いいえ。ブラウザ上で整形されます。
ストアドプロシージャに使えますか?
一般的な文に対応しています。データベース固有の度合いが強いコードでは、一部のレイアウトがそのまま残ることがあります。