PostgreSQL别名

PostgreSQL别名

PostgreSQL别名(Alias)用于为列或表提供临时名称。您可以使用PostgreSQL别名为列或表创建一个临时名称。

通常来说,当您执行自联接时,会创建一个临时表。

PostgreSQL列别名

语法:

SELECT column_name AS alias_name  
FROM table_name  
conditions...  ;

参数说明

  • column_name: 它指定要进行别名的列的原始名称。
  • alias_name: 它指定分配给列的临时名称。
  • table_name:它指定表的名称。
  • AS:这是可选的。大多数程序员将在对列名进行别名时指定AS关键字,但在别名表名时不指定。

注意:

  • 如果alias_name包含空格,则必须将alias_name包含在引号中。
  • 在别名列名时,可以使用空格。 但是使用表名时,使用空格通常不是一个好习惯。
  • alias_name仅在SQL语句的范围内有效。

示例-1

我们来看一下表“EMPLOYEES”,具有以下数据。

执行以下查询使用别名的语句:

SELECT NAME, MAX(SALARY) AS PACKAGE  
FROM EMPLOYEES  
GROUP BY NAME;

执行上面查询语句,输出结果如下 -

PostgreSQL表别名

语法:

SELECT column1, column2....  
FROM table_name AS alias_name  
conditions....  ;

参数说明:

  • table_name:它指定要进行别名的表的原始名称。
  • alias_name:它指定分配给表的临时名称。
  • AS:这是可选的。大多数程序员将在对列名进行别名时指定AS关键字,但在别名表名时不指定。

注意:

  • 如果alias_name包含空格,则必须将alias_name包含在引号中。
  • 在别名列名时,可以使用空格。 但是,当您使用表名时,使用空格通常不是一个好习惯。
  • alias_name仅在SQL语句的范围内有效。

示例-2

我们来看一下表“EMPLOYEES”,具有以下数据。

创建另一个表“DEPARTMENT”,并插入以下数据。

-- Table: public.department

-- DROP TABLE public.department;

CREATE TABLE public.department
(
  id integer,
  dept text,
  fac_id integer
)
WITH (
  OIDS=FALSE
);
ALTER TABLE public.department
  OWNER TO postgres;

-- 插入数据
INSERT INTO department VALUES(1,'IT', 1);
INSERT INTO department VALUES(2,'Engineering', 2);
INSERT INTO department VALUES(3,'HR', 7);

执行上面查询语句后,DEPARTMENT有以下数据 -

执行以下查询使用别名的语句:

SELECT E.ID, E.NAME, E.AGE, D.DEPT  
FROM EMPLOYEES AS E, DEPARTMENT AS D  
WHERE  E.ID = D.ID;

执行上面查询语句,输出结果如下 -