PostgreSQL 別名

PostgreSQL 別名

我們可以用 SQL 重新命名一張表或者一個欄位的名稱,這個名稱就叫著該表或該欄位的別名。

建立別名是為了讓表名或列名的可讀性更強。

SQL 中 使用 AS 來建立別名。

語法

表的別名語法:

SELECT column1, column2....
FROM table_name AS alias_name
WHERE [condition];

列的別名語法:

SELECT column_name AS alias_name
FROM table_name
WHERE [condition];

例項

建立 COMPANY 表(下載 COMPANY SQL 檔案 ),資料內容如下:

itread01db# select * from COMPANY;
 id | name  | age | address   | salary
----+-------+-----+-----------+--------
  1 | Paul  |  32 | California|  20000
  2 | Allen |  25 | Texas     |  15000
  3 | Teddy |  23 | Norway    |  20000
  4 | Mark  |  25 | Rich-Mond |  65000
  5 | David |  27 | Texas     |  85000
  6 | Kim   |  22 | South-Hall|  45000
  7 | James |  24 | Houston   |  10000
(7 rows)

建立 DEPARTMENT 表(下載 COMPANY SQL 檔案 ),資料內容如下:

itread01db=# SELECT * from DEPARTMENT;
 id | dept        | emp_id
----+-------------+--------
  1 | IT Billing  |      1
  2 | Engineering |      2
  3 | Finance     |      7
  4 | Engineering |      3
  5 | Finance     |      4
  6 | Engineering |      5
  7 | Finance     |      6
(7 rows)

下面我們分別用 C 和 D 表示 COMPANY 表和 DEPAERMENT 表的別名:

itread01db=# SELECT C.ID, C.NAME, C.AGE, D.DEPT FROM COMPANY AS C, DEPARTMENT AS D WHERE  C.ID = D.EMP_ID;

得到結果如下:

 id | name  | age |  dept
----+-------+-----+------------
  1 | Paul  |  32 | IT Billing
  2 | Allen |  25 | Engineering
  7 | James |  24 | Finance
  3 | Teddy |  23 | Engineering
  4 | Mark  |  25 | Finance
  5 | David |  27 | Engineering
  6 | Kim   |  22 | Finance
(7 rows)

下面,我們用 COMPANY_ID 表示 ID 列,COMPANY_NAME 表示 NAME 列,來展示列別名的用法:

itread01db=# SELECT C.ID AS COMPANY_ID, C.NAME AS COMPANY_NAME, C.AGE, D.DEPT  FROM COMPANY AS C, DEPARTMENT AS D WHERE  C.ID = D.EMP_ID;

得到結果如下:

company_id | company_name | age | dept
------------+--------------+-----+------------
      1     | Paul         |  32 | IT Billing
      2     | Allen        |  25 | Engineering
      7     | James        |  24 | Finance
      3     | Teddy        |  23 | Engineering
      4     | Mark         |  25 | Finance
      5     | David        |  27 | Engineering
      6     | Kim          |  22 | Finance
(7 rows)