HAVING
那我们如何对函数产生的值来设定条件呢?举例来说,我们可能只需要知道哪些店的营业额
有超过 $1,500。在这个情况下,我们不能使用 WHERE 的指令。那要怎么办呢?很幸运地,
SQL 有提供一个 HAVING 的指令,而我们就可以用这个指令来达到这个目标。 HAVING
子句通常是在一个 SQL 句子的最后。一个含有 HAVING 子句的 SQL 并不一定要包含
GROUP BY 子句。HAVING 的语法如下:
SELECT "栏位1", SUM("栏位2") FROM "表格名" GROUP BY "栏位1" HAVING (函数条件)
请注意:
如果被 SELECT 的只有函数栏, 那就不需要 GROUP BY 子句。
在我们 Store_Information 表格这个例子中,
Store_Information 表格
store_name Sales Date
Los Angeles $1500 Jan-05-1999
San Diego $250 Jan-07-1999
Los Angeles $300 Jan-08-1999
Boston $700 Jan-08-1999
若我们要找出 Sales 大于 $1,500 的 store_name,我们就键入,
SELECT store_name, SUM(sales) FROM Store_Information GROUP BY store_name HAVING SUM(sales) > 1500
结果:
store_name SUM(Sales)
Los Angeles $1800