SQLのキーワードを整える
SQLを貼り付けると、キーワードや代表的な関数名だけを大文字へ変換します。
使い方
SQLの意味や改行位置は変えず、見た目の大小文字だけを整えます。シングルクォート、ダブルクォート、角括弧、コメントの中はそのまま残します。
SQLキーワード大文字化は、SQL文に含まれる`select`や`where`、`order by`といったキーワードだけを自動で大文字に変換するツールです。手書きやAIが生成したSQLは小文字のキーワードと大文字のキーワードが混在しがちで、可読性やチームのコーディング規約の観点から統一したい場面が多くあります。本ツールはSQLの構造を解析し、文字列リテラル(`'...'`や`"..."`)、識別子の角括弧・バッククォート、コメント(`--`や`/* */`)の中身は変換せずそのまま保持しながら、`SELECT`・`FROM`・`WHERE`などの予約語、オプションで`COUNT`や`SUM`といった代表的な関数名のみを大文字化します。
使い方・サンプル・結果例・注意点
使い方
「SQL入力」欄にSQL文を貼り付け、必要に応じて「代表的な関数名も大文字化」のチェックを設定したうえで「大文字化」を押すと、「結果」欄にキーワードを大文字化したSQLが表示されます。
サンプル入力
select id, name, 'select from text' as memo from users u left join orders o on o.user_id = u.id where u.status = 'active' and exists (select 1 from logs l where l.user_id = u.id) -- order by inside comment order by u.id desc
結果例
「大文字化」を押すと、`select`→`SELECT`、`from`→`FROM`、`left join`→`LEFT JOIN`、`where`→`WHERE`、`exists`→`EXISTS`、`order by`→`ORDER BY`、`desc`→`DESC`のように予約語のみが大文字化されます。一方、文字列リテラル内の`'select from text'`はそのまま保持され、コメント`-- order by inside comment`内の`order by`も変換されません。統計欄には入力文字数・置換語数・結果文字数が表示されます。
注意点
変換対象はSQLの構文上のキーワード(`select`、`from`、`where`、`join`、`group by`、`case when`など)と、オプションでON/OFFできる代表的な関数名(`count`、`sum`、`avg`、`cast`、`coalesce`など)です。テーブル名やカラム名、エイリアスなど、キーワード一覧に含まれない識別子は変換されません。シングルクォート・ダブルクォートで囲まれた文字列リテラル、角括弧`[ ]`やバッククォートで囲まれた識別子、`--`の行コメントおよび`/* */`のブロックコメントの内部は対象外として保持されます。SQLの実行や構文の妥当性チェックは行わず、あくまで見た目の大文字・小文字の整形のみを行います。処理はブラウザ内で完結し、入力したSQLは外部へ送信されません。
こんなときに使えます
- バックエンドエンジニアが、ORMの生ログから出力された小文字のSQLを、社内のコーディング規約(キーワード大文字)に合わせて整形する
- データアナリストが、AIに生成してもらった小文字のSQLクエリを、ドキュメントやレビュー用に大文字キーワードのSQLへ変換する
- DBA(データベース管理者)が、複数の開発者から提出されたSQLスクリプトのキーワード表記を統一し、コードレビューの差分を見やすくする
- SQL初学者が、自分で書いたクエリのキーワード部分を大文字化することで、SELECT文の構造(SELECT/FROM/WHERE/ORDER BYなど)を視覚的に把握しやすくする
よくある質問
テーブル名やカラム名も大文字になってしまいますか?
なりません。大文字化の対象はSQLのキーワード一覧(`select`、`where`、`join`など)とオプションで指定する関数名のみです。`users`や`order_id`のような識別子は変換されず、入力時の大文字・小文字のまま保持されます。
コメント内の`select`や`from`のような単語も大文字化されますか?
されません。`--`の行コメントと`/* */`のブロックコメントの内部はキーワード判定の対象外として、入力された内容のまま保持されます。
「代表的な関数名も大文字化」をオフにするとどうなりますか?
`COUNT`、`SUM`、`AVG`、`CAST`、`COALESCE`などの関数名は大文字化されなくなり、SQLのキーワード(`SELECT`、`FROM`、`WHERE`など)のみが大文字化されます。関数名の表記を変更したくない場合にオフにしてください。
文字列リテラルの中に`select`という単語が含まれている場合はどうなりますか?
シングルクォートやダブルクォートで囲まれた文字列リテラルの内部はキーワード判定の対象外のため、そのまま保持されます。サンプルの`'select from text' as memo`のように、文字列の中身は変換されません。
変換後にSQLの実行結果が変わることはありますか?
ありません。SQLのキーワードは多くのデータベースで大文字・小文字を区別しないため、見た目だけの変換です。ただし、識別子(テーブル名・カラム名)の大文字小文字を区別するデータベース設定の場合、本ツールは識別子を変換しないため実行結果には影響しません。