在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;
得到結果如下 -
這是因為名字為 Minsu
和 Manisha
有兩條記錄。