logo图片
PostgreSQL教程

PostgreSQL 别名

在本节中,我们将了解 PostgreSQL别名和PostgreSQL表别名的工作,用于提供

什么是PostgreSQL别名?

PostgreSQL 别名用于为表或 SELECT命令的特定语句。

PostgreSQL别名的优点

PostgreSQL别名的优点如下:
PostgreSQL别名使列或表名更易于理解。 在查询中要使用多个表的情况下,这是首选方法。 它提供了方便灵活的功能,使我们能够快速完成复杂的任务。 当我们在语句中使用函数时,PostgreSQL别名很有用。 在PostgreSQL别名中,我们可以合并两个或更多列。 当列名有意义或不可读时,PostgreSQL别名非常有用。

可以通过两种方式定义PostgreSQL别名:

PostgreSQL表别名 PostgreSQL列别名
在本节中,我们将了解 PostgreSQL表别名及其一些示例。

什么是PostgreSQL表别名?

表别名用于缩写命令,以使其易于阅读或在实现 自加入 ,它在 FROM 子句中多次列出了一个相似的表。
表别名是表示表名的昵称,使表名更易读和更短。
在命令的整个实现过程中,它暂时存在。当表名不是实时友好的用户时,表别名非常有用。

PostgreSQL表别名的语法

的语法> PostgreSQL表别名如下:
SELECT column1, column2....,columnN
FROM table_name AS alias_name
WHERE [condition];
OR
在以下语法中,我们忽略了 AS 关键字,因为它是可选的,而忽略了表_name 被赋予别名 alias_name 。
SELECT column_name
FROM table_name alias_name;
WHERE [condition];
在以上语法中,我们具有以下参数:
参数 说明
table_name 表名参数用于定义我们要在其中执行别名的原始名称。
column_name 列名用于定义特定表的列名。
alias_name 别名用于描述临时名称,该名称被赋予列。
AS AS 是大多数开发人员在为列名添加别名时使用的可选关键字,但在执行表别名时不使用。

PostgreSQL表别名的示例

让我们看一些示例,以更好地了解PostgreSQL表别名。
在连接子句中执行表别名
通常,我们使用join子句从一个或多个包含相似列名的表中获取记录。
如果我们使用相似的列名,则会收到错误消息,
要忽略此错误,我们需要借助以下语法对这些列进行限定:
table_name.column_name
表别名用于一个或多个表,并将它们与 JOIN 子句的链接帮助。在这里,我们将表别名用于 FROM子句中指定的表名,以及 INNER JOIN 子句,使该命令更具可读性。
在下面的示例中,我们有一个名为 Employee的表,该表包含以下数据:
PostgreSQL别名
此语句将使用表别名返回记录:
SELECT employee_details.emp_id, employee_details.emp_fname, 
employee_details.emp_lname
FROM employee AS employee_details; 
输出
在执行上述命令时,我们将得到以下结果:
PostgreSQL Alias
让我们假设我们的数据库还有一个名为 department 的表,其中包含以下数据在以下屏幕截图中:
PostgreSQL别名
我们可以看到两个表都包含一个相似的列 emp_fname 。
SELECT e.emp_id, emp_fname, emp_lname,location,dept_name  
FROM Employee  e  
INNER JOIN department  d   
ON e.emp_id= d.dept_id;
输出
在执行上述命令时,我们将得到以下输出,显示以下错误: 一个子句中的" emp_fname"列为(如果我们不使用表别名)。
PostgreSQL别名
因此,如果需要为避免上述错误,我们将使用表别名。
在以下命令中,我们将使用PostgreSQL内部联接子句来组合 Employee和Department表; 并对其执行表别名。
SELECT e.emp_id, e.emp_fname, emp_lname,
location, dept_name  
FROM Employee  e  
INNER JOIN department  d   
ON e.emp_id= d.dept_id
ORDER BY location desc;    
输出
执行上述命令后,我们将获得以下输出:
PostgreSQL Alias
如果我们不想在命令中使用别名概念,那么PostgreSQL将使用表名来查找列名,这会使语句变长且可读性降低,例如我们可以在下面的示例中看到
SELECT emp_fname, emp_lname,location 
FROM employee    
INNER JOIN employee_details 
ON employee.emp_id= employee_details.emp_id;
输出
执行上面的语句后,我们将获得以下输出:
PostgreSQL别名 为冗长的表名执行表别名的示例
为了使我们的命令更具可读性并节省一些输入时间来写冗长的表名,我们可以使用表别名。
例如,不要在命令行中使用以下表达式命令,
Long_table_name.column_name
我们可以为表 long_table_name 赋予一个别名,如下所示:
Long_table_name AS alias
,它借助于表别名引用表 Long_table_name 中的列名:
alias.column_name
在PostgreSQL自连接子句中执行表别名
假设我们要在 Self-join子句中使用表别名。并且self-join子句用于将表合并到自身,该表引用了一个相似的表
在下面的示例中,我们将借助表别名在类似的命令中显示如何两次引用 Customer 表:
SELECT
c.first_name Customer,
o.first_name Orders
FROM Customer c
INNER JOIN Customer o ON o.order_id = c.order_id
ORDER BY Orders;
输出
执行上述命令后,我们将得到以下结果:
PostgreSQL Alias
概述
在PostgreSQL表Alias部分中,我们学习了以下主题:
我们将用于提供 PostgreSQL表别名,以便在执行命令时临时为表赋予新名称。 我们将在PostgreSQL Join子句中实现表别名。
"内容整理不易,点下广告也是鼓励~"
昵称: 邮箱:
Copyright © 2020 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4