SQL 整形

ログや ORM から 1 行で出てきたクエリを貼り付ければ、また読めるクエリになります。SELECT、FROM、WHERE、そして各 JOIN がそれぞれの行に並びます。

コードはこのページから出ません。整形はブラウザ内で行われます。

使い方

  1. 最初の欄にクエリを貼り付けます。
  2. キーワードを大文字にするか、カラムを 1 行ずつにするかを選びます。
  3. 結果をコピーします。

知っておくと便利

リテラルを守る理由

クエリの中には 'order by name' という値や、SELECT という語を含むコメントが現れることがあります。検索と置換で動く整形器は、そこで改行を入れたり、あなたのデータの中の語を大文字に変えたりします。ここでは整形の前に文字列リテラルとコメントを退避し、終わったあとにそのまま戻します。

改行は何のためか

クエリを読むとは、三つのことを素早く掴むことです。どのテーブルを触るのか、どう結合しているのか、何で絞り込むのか。句ごとに行を分ければ、この三つが一目で分かります。誰かが実行するよりずっと前、コードレビューの段階でこの体裁が定着したのはそのためです。

よくある質問

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

PostgreSQL・MySQL・SQL Server・SQLite に共通する句です。方言固有の構文は整形しませんが、壊しもしません。知らない語はそのまま通します。

クエリの誤りを検査しますか。

しません。渡されたものを並べ替えるだけで、構文解析は行いません。壊れたクエリは壊れたままですが、読みやすくはなります。

クエリはサーバーに送られますか。

送られません。すべてブラウザ内で行います。クエリにはテーブル名が、しばしば本番の値までもが含まれるので、これは重要な点です。

キーワードが大文字になりません。

「キーワードを大文字に」を有効にしてください。規則ではなく好みの問題で、SQL をすべて小文字で書くチームも多くあります。

関連ツール