本文へ移動

開発ツール・ブラウザー内処理

SQLフォーマッター

クエリを貼り付けてデータベース方言を選ぶと、読みにくいSQLを見やすく整形できます。SQLはこのタブ内に留まります。

整形するSQL

最大100,000文字。整形するだけで実行はしません。

0 / 100,000

アップロード、保存、データベース接続、クエリ実行は一切行いません。

整形済みSQL

整形したSQLがここに表示されます。

SQLを安全に整形し、結果を確認する方法

開発者、分析担当者、学習者が詰まったSQLを読みやすくするためのツールです。空白と任意のキーワード表記だけを変え、SQLの正しさを保証したり実行したりはしません。

使い方

  1. SQLを貼り付け、実際に実行するデータベース方言、インデント、キーワード表記を選びます。標準SQLは自動判定ではありません。
  2. 「SQLを整形」またはCtrl/Command+Enterを押し、出力を比較してからコピーします。入力変更後は再整形してください。

変わる部分と保持する部分

句の改行とネストの字下げを行います。識別子、文字列、数値、コメント、対応するプレースホルダーは内容として保持します。

整形は意味の同一性の証明ではありません。移行SQL、ストアドプロシージャ、生成SQLは原文と比較してください。

方言の選び方

SQL製品は引用符、関数、手続きブロック、演算子が異なります。対象製品を選んでください。

失敗時は入力を残し、方言を直し、{{ column }}のようなテンプレート構文を分けて確認します。

出力の利用

エディターやdiffにコピーするとJOINや条件の構造を読みやすくできますが、レビューやlintの代わりではありません。

アカウント、履歴、ダウンロード、DB接続はありません。タブを閉じる前に元のSQLを別途保存してください。

具体例2件

JOIN・文字列・コメント・名前付きパラメーター

:minimumと文字列を保持したまま句を整形します。

select u.id,u.name from users u -- active accounts
join orders o on o.user_id=u.id where u.status='active user' and o.total>:minimum order by o.created_at desc;

位置パラメーターとサブクエリ

$1を保持し、PostgreSQLへ接続せずサブクエリを字下げします。

select * from events where account_id=$1 and created_at>(select max(created_at) from archive);

制限とよくあるエラー

  • 上限は100,000文字です。大きいスクリプトは文単位で分割してください。
  • 空入力や未対応構文でも入力は消しません。
  • 実行、スキーマ検証、最適化、方言変換、危険SQL検出は行いません。
  • テンプレートと手続きSQLは手動比較が必要です。
  • コピーできない場合は表示結果を選択して手動コピーします。

よくある質問

SQLは送信・実行されますか?

いいえ。このタブ内で整形し、DBには接続しません。

どの方言を選びますか?

実際に実行するDBを選び、標準SQLは共通構文だけに使います。

コメントやパラメーターは保持されますか?

対応文法では保持されます。独自テンプレートは確認してください。

整形すると安全・高速になりますか?

いいえ。見た目と安全性・性能は別の確認です。

失敗する理由は?

方言違い、または未対応の製品固有/テンプレート構文が主な原因です。