SQL Formatter
SQL Formatterはブラウザ上で動作するSQLコード整形ツールです。複数のSQL方言に対応し、キーワードの大文字・小文字やインデント設定が可能です。
SQL Formatterは、標準SQL、MySQL、PostgreSQL、SQLite、T-SQLの5つのSQL方言をサポートするブラウザベースのコード整形ツールです。内部でsql-formatterライブラリとnearleyパーサーを使用し、複雑なSELECT文やCTEなども正確に解析できます。すべての処理はローカルのブラウザで完結するため、ソースコードが外部に送信されずプライバシーが保護されます。関連ツールとして、JSON FormatterやXML Formatterもご利用いただけます。
使い方
- テキストエリアに整形したいSQLコードを貼り付けます。
- サポートされる5つのSQL方言から対象のものを選択します(例: MySQLやPostgreSQL)。
- キーワードの大文字・小文字設定(UPPER、lower、preserve)とインデント幅(2スペース固定)を選択します。
- 必要に応じてクエリ間の空行数を設定し、「フォーマット」ボタンを押します。
- 整形されたコードが下部に表示されるので、コピーしてご利用ください。
動作原理
このSQL Formatterはsql-formatterライブラリを用い、構文解析にはnearleyパーサーを組み合わせています。これにより、SQLの複雑な構造もAST(抽象構文木)として正確に解析し、SELECT、INSERT、UPDATE、DELETE、CREATE TABLE、JOIN、サブクエリ、CTEなど多様な文法要素を認識可能です。キーワードの大文字・小文字変換やインデントはASTを元に正確に適用されます。全ての処理はクライアントサイドのJavaScriptで実行されるため、コードが外部サーバーに送信されることはありません。
具体例
-- 入力SQL例
select id, name from users where age > 20 order by name;
-- 整形後例
SELECT id,
name
FROM users
WHERE age > 20
ORDER BY name;
利用シーン
- デベロッパーが読みやすいSQLコードを書くための整形。
- デザイナーがコードスニペットを美しく表示する際のフォーマット調整。
- SEO担当者が構造化データを含むSQLクエリを整理しやすくするため。
- 学生がSQLの学習時に自分の書いたクエリの整形と理解を助ける。
また、SQL以外のコード整形にはJson FormatterやXml Formatter、CSS圧縮にはCss Minifierもご活用ください。
よくある質問
どのSQL方言に対応していますか?
SQL Formatterは標準SQL、MySQL、PostgreSQL、SQLite、T-SQL(Microsoft SQL Server)をサポートしています。それぞれの方言特有の構文もnearleyパーサーにより正確に解析可能です。
キーワードの大文字・小文字は変更できますか?
UPPER(すべて大文字)、lower(すべて小文字)、preserve(元のまま)の3種類のモードから選択可能です。ASTベースでキーワードを変換するため、正確な適用が保証されます。コードはどこに送信されますか?
すべての処理はブラウザのJavaScriptで行われ、コードは外部サーバーに送信されません。ユーザーのプライバシーは完全に保護されます。
複数のクエリをまとめて整形できますか?
はい、複数のSQL文をまとめて入力し、クエリ間の空行数も設定可能です。これにより複数クエリを見やすく整形できます。
大きなSQLファイルも扱えますか?
ブラウザのメモリ制限内であれば、数千行程度のSQLコードも整形可能です。ただし、非常に大きなファイルはブラウザのパフォーマンスに影響する場合があります。