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;

執行上面查詢語句,輸出結果如下 -


上一篇: PostgreSQL觸發器 下一篇: PostgreSQL索引