PostgreSQL 别名

Posted 瀚高PG实验室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 表,数据内容如下:

highgo=# select  * from  company ; 
 id | name | age |                       address                        | salary 
----+------+-----+------------------------------------------------------+--------
  1 | 张三 |  32 | 济南                                                 |  20000
  2 | 李四 |  25 | 青岛                                                 |  15000
  3 | 王五 |  23 | 北京                                                 |  20000
  4 | 赵六 |  25 | 上海                                                 |  65000
  5 | 小明 |  27 | 广州                                                 |  85000
  6 | 小红 |  22 | 深圳                                                 |  45000
  7 | 小强 |  24 | 成都                                                 |  10000
(7 行记录)

创建 DEPARTMENT 表,数据内容如下:

 id |                          dept                          | emp_id 
----+--------------------------------------------------------+--------
  1 | 技术支持                                               |      1
  2 | 研发                                                   |      2
  3 | 财务                                                   |      7
  4 | 研发                                                   |      3
  5 | 财务                                                   |      4
  6 | 研发                                                   |      5
  7 | 财务                                                   |      6
(7 行记录)

下面我们分别用 C 和 D 表示 COMPANY 表和 DEPAERMENT 表的别名:

highgo=# 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 | 张三 |  32 | 技术支持                                              
  2 | 李四 |  25 | 研发                                                
  7 | 小强 |  24 | 财务                                                
  3 | 王五 |  23 | 研发                                                
  4 | 赵六 |  25 | 财务                                                
  5 | 小明 |  27 | 研发                                                
  6 | 小红 |  22 | 财务                                                
(7 行记录)

下面,我们用 COMPANY_ID 表示 ID 列,COMPANY_NAME 表示 NAME 列,来展示列别名的用法:

highgo=# 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 | 张三         |  32 | 技术支持                                              
          2 | 李四         |  25 | 研发                                                
          7 | 小强         |  24 | 财务                                                
          3 | 王五         |  23 | 研发                                                
          4 | 赵六         |  25 | 财务                                                
          5 | 小明         |  27 | 研发                                                
          6 | 小红         |  22 | 财务                                                
(7 行记录)

以上是关于PostgreSQL 别名的主要内容,如果未能解决你的问题,请参考以下文章

10.PostgreSQL别名

PostgreSQL:使用列别名的窗口函数

为 PostgreSQL 表创建别名

PostgreSQL-9-别名与动态表复制

在片段着色器中绘制别名像素完美线?

JOOQ 可以为 H2/Postgresql 别名 Liquibase JSONB 数据类型吗