# SQL 整形ツール

URL: https://tools.otaku-dojo.com/ja/sql-formatter
Updated: 2026-10-04

SQL 整形ツールは、1 行に詰まった SQL を句（SELECT、FROM、WHERE、JOIN、GROUP BY、ORDER BY…）ごとに改行し、列は 1 行に 1 つ、AND / OR の条件は行を分け、サブクエリは自動でインデントします。キーワードの大文字・小文字の統一や、逆に 1 行への圧縮もできます。文字列とコメントはそのまま保持され、処理はすべてブラウザ内で行われます。

## SQL 整形ツールの使い方

1. 左側に SQL を貼り付けるか、「サンプル」で JOIN を含むクエリを読み込みます。
2. 整形か圧縮、キーワードの大文字・小文字、インデント幅を選びます。
3. 結果がすぐ表示されます。括弧の数が合わない場合はステータスバーに表示されます。
4. 「コピー」または「ダウンロード」で .sql として保存します。

## 仕様とポイント

- **対応構文**: SELECT、INSERT、UPDATE、DELETE、WITH、各種 JOIN、サブクエリ、CASE、UNION
- **整形ルール**: 句ごとに改行、列は 1 行に 1 つ、AND / OR で改行、サブクエリをインデント
- **オプション**: 整形 / 圧縮、キーワード大文字 / 小文字 / そのまま、インデント 2 または 4
- **保持**: 文字列、引用符付き識別子、コメント
- **対象外**: 構文の完全な検証や実行
- **処理場所**: ブラウザ内（クエリはアップロードされません）

## 使用例: JOIN と条件を整形

```sql
select u.id, count(o.id) as orders from users u left join orders o on o.user_id = u.id where u.active = 1 and o.status = 'paid' group by u.id
```

→

```sql
SELECT
  u.id,
  COUNT(o.id) AS orders
FROM
  users u
LEFT JOIN orders o
  ON o.user_id = u.id
WHERE
  u.active = 1
  AND o.status = 'paid'
GROUP BY
  u.id
```

## よくある質問

### SQL の構文チェックはできますか？

完全な検証は行いません。閉じていない引用符や括弧の数の不一致のみ知らせます。正しいかどうかはデータベースで実行して確認してください。

### 対応しているデータベースは？

MySQL、MariaDB、PostgreSQL、SQLite、SQL Server の一般的な構文を整形できます。各データベース独自の構文はそのまま残ります。

### 整形するとクエリの結果は変わりますか？

変わりません。空白・改行・キーワードの大文字小文字のみを変更し、文字列や識別子はそのままです。

### 本番のクエリを貼り付けても安全ですか？

安全です。整形はブラウザ内で行われ、内容はサーバーに送信されません。
