SQLを見やすく表示するための整形とフォーマット手法

SQLクエリの可読性を高めるための整形テクニックやフォーマットのルールを解説します。実務で使える具体的なコード例も交えながら、あなたのSQLをより見やすくできないでしょうか?

SQLを見やすく表示する方法と実践テクニック

SQLの可読性向上のポイント
📝
基本的な整形ルール

インデント、改行、大文字・小文字の使い分けで可読性が大きく向上します

🔍
表示幅の最適化

見やすい行幅とカラム表示で、データの把握が容易になります

実行効率の向上

適切な整形により、デバッグやメンテナンスが容易になります

SQLの基本的な整形ルールとインデント設定

みなさん、SQLを書いていて「これ、もっと見やすくならないかな?」と思ったことはありませんか?実は、適切な整形を施すだけで、SQLの可読性は劇的に向上するんです。

 

まずは基本的な整形ルールをマスターしましょう。ポイントは以下の3つです:

  1. キーワードは大文字で統一
  2. カラムやテーブルは1行に1つ
  3. AND/ORは行の先頭に配置

 

例えば、次のような整形前のSQLがあったとします:


select num, name from user_table where country = 'JPN' and age >= 20 and age <= 30

 

これを整形すると:


SELECT
    num,
    name
FROM
    user_table
WHERE
    country = 'JPN'
    AND age >= 20
    AND age <= 30

SELECT文の実行結果を見やすくする表示幅の調整

データベースから取得した結果を見やすく表示することも重要です。特に大量のデータを扱う場合、表示幅の調整が効果的です。


-- 表示幅の設定例
SET LINESIZE 120
SET PAGESIZE 50
COLUMN name FORMAT A20
COLUMN description FORMAT A40

大文字・小文字とカンマ位置による可読性の向上

SQLの可読性を高めるために、予約語は大文字、それ以外は小文字で記述するのがおすすめです。これにより、コードの構造が一目で分かるようになります。

 

カンマの位置も重要で、以下のような配置が推奨されています:


SELECT
    first_name
    , last_name
    , email
FROM
    employees
WHERE
    department_id = 10
    AND salary > 5000

メタコマンドを活用した出力形式のカスタマイズ

データベースクライアントツールには、出力形式をカスタマイズできるメタコマンドが用意されています。これらを活用することで、より見やすい結果表示が可能になります。


-- Oracle SQLPlusの例
SET LINESIZE 100
SET PAGESIZE 50
SET FEEDBACK ON
SET TIMING ON

SQLフォーマッターツールの効果的な活用方法

手動での整形は時間がかかるため、フォーマッターツールの活用がおすすめです。特に以下のようなケースで効果を発揮します:

  1. 複雑なJOINを含むクエリ
  2. サブクエリが多用されているSQL
  3. 大量のカラムを扱うSELECT文

 

Visual Studio CodeやDBeaver、DataGripなどの開発ツールには、ワンクリックでSQLを整形できる機能が搭載されています。これらを活用することで、効率的にコードの可読性を向上させることができます。