PostgreSQL 别名
你可以通过提供另一个名称来临时重命名表或列,这称为别名。表别名的使用意味着重命名特定 PostgreSQL 语句中的表,重命名是临时更改,数据库中的实际表名不会更改。
列别名用于为特定的 PostgreSQL 查询重命名表的列。
语法
表别名的基本语法如下:
SELECT column1, column2.... FROM table_name AS alias_name WHERE [condition];
字段别名的基本语法如下:
SELECT column_name AS alias_name FROM table_name WHERE [condition];
例子
考虑以下两个表,(a) COMPANY 表如下:
testdb=# 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)
(b) 另一个是 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 和 DEPARTMENT 表的别名:
testdb=# SELECT C.ID, C.NAME, C.AGE, D.DEPT FROM COMPANY AS C, DEPARTMENT AS D WHERE C.ID = D.EMP_ID;
上面给出的 PostgreSQL 语句将产生以下结果:
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 列的别名:
testdb=# 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;
上面给出的 PostgreSQL 语句将产生以下结果:
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)