八月 31, 2023
摘要:在本教程中,您将了解 PostgreSQL 列别名以及如何使用列别名为查询中的列分配临时名称。
目录
PostgreSQL 列别名简介
列别名允许您为SELECT
语句的查询列表中的列或表达式分配临时名称。列别名只在查询执行期间临时性的存在。
下面说明了使用列别名的语法:
SELECT column_name AS alias_name
FROM table_name;
在此语法中,column_name
被分配了一个别名alias_name
。其中AS
关键字是可选的,因此您可以像这样省略它:
SELECT column_name alias_name
FROM table_name;
以下语法说明了如何为SELECT
子句中的表达式设置别名:
SELECT expression AS alias_name
FROM table_name;
列别名的主要目的是使查询输出的标题更有意义。
PostgreSQL 列别名示例
我们将使用示例数据库中的customer
表来向您展示如何使用列别名。
1) 为列分配列别名的示例
以下查询返回customer
表中所有客户的名字和姓氏:
SELECT
first_name,
last_name
FROM customer;
如果要重命名last_name
标题,可以使用列别名为其指定一个新名称,如下所示:
SELECT
first_name,
last_name AS surname
FROM customer;
此查询将surname
指定为last_name
列的别名:
或者您可以通过删除AS
关键字来缩短它,如下所示:
SELECT
first_name,
last_name surname
FROM customer;
2) 为表达式分配列别名的示例
以下查询返回所有客户的全名。它通过连接名字、空格和姓氏来构造全名:
SELECT
first_name || ' ' || last_name
FROM
customer;
请注意,在 PostgreSQL 中,您使用||
用作连接运算符,将一个或多个字符串连接成一个字符串。
从输出中可以清楚地看到,该列的标题?column?
没有意义。
要解决此问题,您可以为表达式first_name || ' ' || last_name
分配一个列别名,例如full_name
:
SELECT
first_name || ' ' || last_name AS full_name
FROM
customer;
3) 包含空格的列别名
如果列别名包含一个或多个空格,则需要用双引号将其引起来,如下所示:
column_name AS "column alias"
例如:
SELECT
first_name || ' ' || last_name "full name"
FROM
customer;
概括
- 使用语法
column_name AS alias_name
为列分配列别名,或使用expression AS alias_name
为表达式分配列别名。 - 关键字
AS
是可选的。 - 使用双引号 (") 括住包含空格的列别名。