ツール
入力
結果
結果はここに表示されます。実行履歴
ポイントを消費した実行のみ保存されます。
ログインすると実行履歴を残せます。
ORMが生成したSQLやクエリログの出力は、1行の長い文字列として届きます。これは、最も読みたいときに限って読めないものです。このツールは、PostgreSQL、MySQL、SQLite、BigQuery向けのダイアレクトを認識したキーワード処理で再インデントし、JOIN、サブクエリ、CTEがレビュアーの期待通りに整列されるようにします。
動作のしくみ
- フォーマットは、多くのSQLツールが使用しているライブラリであるsql-formatter上で、ブラウザ内で実行されます。
- ダイアレクトを選択すると、どの単語がキーワードとして扱われるか、およびその引用規則がどのように適用されるかが変わります。
- キーワードの大文字小文字とインデント幅は自由に設定できます。ツールはそれ以外のものを書き換えません。
データの行き先
どこにも行きません。このツールは完全にブラウザ内で動作します。貼り付けたテキストはページが処理し、サーバーに送信されることも、ログに記録されることもありません。
ポイントを消費した実行は、後から探せるように一行の要約があなた自身の履歴に保存されます。保存されるのは実行の形——サイズ、件数、調べた値——であって、貼り付けた内容ではありません。
必要なポイント
1 回あたり 50.0 KB まではアカウントなしで無料です。それを超える実行は 1 ポイントを消費し、履歴に保存されます。
ポイントは登録、デイリーチェックイン、コメント投稿、プロフィールの記入で貯まります。
ポイントの仕組みを見るよくある質問
- これによってクエリの動作は変わりますか?
- いいえ。変更されるのは空白とキーワードの大文字小文字のみです。識別子、リテラル、構造は元のままです。
- ダイアレクト固有の構文がおかしくなるのはなぜですか?
- 一致するダイアレクトを選択してください。汎用SQLとしてフォーマットすると、PostgreSQLの::キャストやBigQueryのバッククォートで囲まれた名前などの構文が、本来の構文として認識されません。
- パラメータプレースホルダを含むクエリをフォーマットできますか?
- はい。一般的なスタイル(?、$1、:name)のプレースホルダは、そのまま保持されます。
背後にあるオープンソース
このツールは sql-formatter-org/sql-formatter(MIT)の上で動作しています。同じ処理を自分のプログラムに組み込みたい場合は、そのライブラリを使ってください。
sql-formatter-org/sql-formatter別の呼び方
- SQL フォーマッター
- SQL 整形 オンライン
- SQL ビューティファイア
- SQL プリティプリント
- PostgreSQL フォーマッター