SQL 別名

❮ 前章へ 次章へ ❯

SQL の別名は、テーブルや列の見出しの名前を一時的に変更するために使用します。


SQL 別名

SQL の別名は、データベース·テーブル、またはテーブル内の列に、一時的な名前を設定するために使用します。

基本的に、別名は列名を読みやすくするために作成します。

SQL 列の別名構文

SELECT column_name AS alias_name
FROM table_name;

SQL テーブルの別名構文

SELECT column_name(s)
FROM table_name AS alias_name;

デモ・データベース

このチュートリアルでは、よく知られた Northwind サンプルデータベースを使用します。

下は、"Customers" テーブルから抜粋したものです:

CustomerID CustomerName ContactName Address City PostalCode Country
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK

および "Orders" テーブルからの抜粋です:

OrderID CustomerID EmployeeID OrderDate ShipperID
10354 58 8 1996-11-14 3
10355 4 6 1996-11-15 1
10356 86 6 1996-11-18 2

テーブル列の別名の例

次の SQL 文は、1 つは CustomerName 列のもので、もう 1 つは ContactName 列のものの、2 つの別名を指定しています。 チップ: 列名にスペースが含まれている場合は、2 重引用符か角カッコが必要です:

SELECT CustomerName AS Customer, ContactName AS [Contact Person]
FROM Customers;
Try it Yourself ❯

次の SQL 文では、4 つの列(Address、City、PostalCode、Country)を結合し、 別名 "Address" を作成します:

SELECT CustomerName, Address+', '+City+', '+PostalCode+', '+Country AS Address
FROM Customers;
Try it Yourself ❯

注: MySQLで動作するような SQL 文は、以下のものを使用します:

SELECT CustomerName, CONCAT(Address,', ',City,', ',PostalCode,', ',Country) AS Address
FROM Customers;

テーブルの別名の例

次の SQL 文は、CustomerID=4(Around the Horn)である customer から、全ての orders を選択します。 "Customers" と "Orders" テーブルを使用しますが、テーブルの別名としてそれぞれ "c" と "o" を使用します (ここでは、SQL を短くするために別名を使用しています):

SELECT o.OrderID, o.OrderDate, c.CustomerName
FROM Customers AS c, Orders AS o
WHERE c.CustomerName="Around the Horn" AND c.CustomerID=o.CustomerID;
Try it Yourself ❯

別名を使わない場合の SQL 文:

SELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM Customers, Orders
WHERE Customers.CustomerName="Around the Horn" AND Customers.CustomerID=Orders.CustomerID;
Try it Yourself ❯

別名は、次のような場合に便利です:


❮ 前章へ 次章へ ❯