PostgreSQL Having子句

在PostgreSQL中,HAVING子句與GROUP BY子句組合使用,用於選擇函數結果滿足某些條件的特定行。

語法:

SELECT column1, column2
FROM table1, table2
WHERE [ conditions ]
GROUP BY column1, column2
HAVING [ conditions ]
ORDER BY column1, column2

示例1:

我們來看一下表“EMPLOYEES”,具有以下數據。

在這個例子中,它將顯示名稱(name)數量小於2的記錄。

執行以下查詢:

SELECT NAME
FROM EMPLOYEES
GROUP BY NAME HAVING COUNT (NAME) < 2;

得到結果如下 -

示例2:

我們在“EMPLOYEES”表中插入一些重複的記錄,首先添加以下數據:

INSERT INTO EMPLOYEES VALUES (7, 'Minsu', 24, 'Delhi', 135000);
INSERT INTO EMPLOYEES VALUES (8, 'Manisha', 19, 'Noida', 125000);

現在完整的數據如下所示 -

執行以下查詢表“EMPLOYEES”中name字段值計數大於1的名稱。

SELECT NAME,COUNT (NAME)
FROM EMPLOYEES
GROUP BY NAME HAVING COUNT (NAME) > 1;

得到結果如下 -

這是因為名字為 MinsuManisha 有兩條記錄。


上一篇: PostgreSQL分組(GROUP BY子句) 下一篇: PostgreSQL條件查詢