Loading [MathJax]/extensions/tex2jax.js
スポンサーリンク

【SQL】AS句の使い方

記事内に広告が含まれています。

SQLのAS句は、クエリ結果やテーブルの列名、またはサブクエリに別名(エイリアス)を付けるために使用されます。

これにより、クエリの可読性を向上させたり、同じクエリ内でカラム名やテーブル名の衝突を回避したりすることができます。

AS句の基本的な使い方をまとめます。

スポンサーリンク

基本構文

SQLにおけるAS句は次のような構文で使用します。

列(カラム)に別名を付ける

SELECT 列名 AS 別名
FROM テーブル名;

テーブルに別名を付ける

SELECT 別名.列名
FROM テーブル名 AS 別名;
スポンサーリンク

使用例

列名のエイリアスを付ける

AS句を使用して列名をわかりやすい名前に変更します。

サンプルデータ

テーブル名:sales

product_idtotal_sales
11000
21500

クエリ例

SELECT product_id AS 商品ID, total_sales AS 売上
FROM sales;

実行結果

商品ID売上
11000
21500

ポイント

  • 日本語の列名を付けることでレポートに活用しやすくなります。
  • 別名はクエリ実行結果にのみ影響を与え、元のテーブルには影響を与えません。

テーブル名にエイリアスを付ける

複数のテーブルを使用する場合、AS句でエイリアスを付けるとクエリが簡潔になります。

サンプルデータ

テーブル名:productssales

products

product_idproduct_name
1Apple
2Banana

sales

product_idtotal_sales
11000
21500

クエリ例

SELECT p.product_name AS 商品名, s.total_sales AS 売上
FROM products AS p
JOIN sales AS s
ON p.product_id = s.product_id;

実行結果

商品名売上
Apple1000
Banana1500

ポイント

  • テーブルにエイリアスを付けることでクエリが読みやすくなります。
  • 複数のテーブルに同じ列名があってもエイリアスを使えば衝突を防げます。

サブクエリにエイリアスを付ける

サブクエリに名前を付けることで、メインクエリ内で再利用しやすくなります。

クエリ例

SELECT sub.product_name AS 商品名, sub.total_sales AS 売上
FROM (
    SELECT p.product_name, s.total_sales
    FROM products AS p
    JOIN sales AS s
    ON p.product_id = s.product_id
) AS sub;

ポイント

  • サブクエリに名前を付けることで、メインクエリが簡潔になります。
  • 複雑な計算や集計をサブクエリで行い、それにエイリアスを付けて再利用するのが一般的です。

集計関数とエイリアス

集計結果に意味のある名前を付ける際にもAS句が有効です。

クエリ例

SELECT product_id AS 商品ID, SUM(total_sales) AS 合計売上
FROM sales
GROUP BY product_id;

実行結果

商品ID合計売上
11000
21500

注意点

  1. ASは省略可能
    一部のSQL環境ではASを省略できますが、記述するほうが可読性が向上します。
    SELECT product_id 商品ID, total_sales 売上 FROM sales;
  2. SQLエンジンによる制約
    一部のSQLエンジンではエイリアスに特定の文字(例: スペースや特殊文字)を使う際に、ダブルクォーテーションやバッククォートで囲む必要があります。
    SELECT product_id AS "商品 ID", total_sales AS "売上額" FROM sales;
  3. エイリアスの使い過ぎに注意
    過度にエイリアスを使用するとクエリが複雑になり、可読性を損なうことがあります。

おわりに

SQLのAS句は、列名やテーブル名にわかりやすい別名を付けることで、クエリの可読性を向上させる便利な機能です。列名の変更、テーブル名の短縮、サブクエリの整理など、さまざまな場面で活用できます。

スポンサーリンク
SQL
著者SNS
タイトルとURLをコピーしました