跳到主要内容

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 文件 ),数据内容如下:

lectcodedb# 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 文件 ),数据内容如下:

lectcodedb=# 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 表的别名:

lectcodedb=# 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 列,来展示列别名的用法:

lectcodedb=# 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)