開発者向け
SQLフォーマッター
SQL文を自動整形・美化。MySQL・PostgreSQL・SQLiteの方言対応。キーワード大文字/小文字変換、インデント調整、カンマ位置指定、サブクエリの自動インデント。ブラウザ内処理で安全。
登録不要
SQLフォーマッターについて
SQLフォーマッターとは
SQLフォーマッターは、SQL文を統一されたスタイルに自動整形するツールです。開発現場では複数のエンジニアが異なるスタイルでSQLを書くため、コードレビューや保守の際に可読性が低下しがちです。
本ツールはSQLをトークンに分解し、キーワードの改行・インデント・大文字小文字を統一的に整形します。MySQL・PostgreSQL・SQLiteの3つの方言に対応し、各データベース固有のキーワードを正しく認識します。
整形ルール
- 主要キーワードの改行: SELECT, FROM, WHERE, JOIN, GROUP BY, ORDER BY, HAVING等の前で改行を挿入
- サブクエリのインデント: 括弧内のSELECT文を自動的にインデント
- キーワードの大文字/小文字: UPPER(大文字)、lower(小文字)、preserve(そのまま)を選択可能
- カンマ位置: カラムリストのカンマを行末(after)または行頭(before)に配置
- AND/ORの改行: WHERE句内のAND・ORの前で改行するか選択可能
- コメント保持: 行コメント(--)とブロックコメント(/* */)を保持
対応するSQL方言
| 方言 | 識別子の引用符 | 特徴的なキーワード |
|---|---|---|
| MySQL | バッククォート `name` | AUTO_INCREMENT, ENGINE, IF NOT EXISTS, UNSIGNED |
| PostgreSQL | ダブルクォート "name" | SERIAL, RETURNING, ILIKE, COALESCE, LATERAL |
| SQLite | ダブルクォート "name" | AUTOINCREMENT, GLOB, PRAGMA |
方言を切り替えることで、各データベース固有のキーワードが正しく認識・整形されます。標準SQLのキーワードはすべての方言で共通して対応しています。
活用シーン
- コードレビュー: チーム内のSQL記述スタイルを統一し、レビュー効率を向上
- デバッグ: 長い1行SQLを整形して構造を把握し、WHERE句やJOIN条件のミスを発見
- ドキュメント作成: SQL例を美しく整形してドキュメントやブログ記事に挿入
- 学習: 複雑なクエリの構造をインデントで視覚化し、SQLの理解を深める
よくある質問
- Q. 整形前のSQLに構文エラーがあっても使えますか?
- 本ツールはトークンベースの整形を行うため、厳密な構文チェックは行いません。多少の構文エラーがあっても整形は実行されますが、結果が意図通りにならない場合があります。正確な整形のためには、構文的に正しいSQLを入力してください。
- Q. ストアドプロシージャやPL/pgSQLも整形できますか?
- 本ツールは主にDML(SELECT, INSERT, UPDATE, DELETE)とDDL(CREATE TABLE等)の整形に特化しています。ストアドプロシージャやPL/pgSQLのBEGIN...END構文は基本的な整形は行いますが、言語固有の制御構文の完全な整形には対応していません。
- Q. カンマを行頭に置く(comma-first)スタイルの利点は?
- カンマを行頭に置くスタイルは、カラムの追加・削除時にdiffが1行で済み、gitでの変更追跡が容易になります。また、カンマの付け忘れを視覚的に発見しやすいという利点もあります。チームの規約に合わせて選択してください。
- Q. 入力したSQLはサーバーに送信されますか?
- いいえ。すべての整形処理はブラウザ内のJavaScriptで完結します。入力されたSQL文は外部に一切送信されないため、本番環境のクエリや機密データを含むSQLも安全に整形できます。
このツールを評価
—(0件)


