我們現(xiàn)在回到函數(shù)上。記得我們用
SUM
這個(gè)指令來算出所有的 Sales (營業(yè)額)吧!如果我們的需求變成是要算出每一間店 (store_name) 的營業(yè)額 (sales),那怎么辦呢?在這個(gè)情況下,我們要做到兩件事:第一,我們對(duì)于 store_name 及 Sales 這兩個(gè)欄位都要選出。第二,我們需要確認(rèn)所有的 sales 都要依照各個(gè) store_name 來分開算。這個(gè)語法為:
SELECT "欄位1", SUM("欄位2") FROM "表格名" GROUP BY "欄位1"
在我們的示范上
Store_Information 表格
store_name | sales | date |
Los Angeles | $1500 | jan-05-1999 |
San Francisco | $300 | jan-08-1999 |
Boston | $700 | jan-08-1999 |
那我們如何對(duì)函數(shù)產(chǎn)生的值來設(shè)定條件呢?舉例來說,我們可能只需要知道哪些店的營業(yè)額有超過 $1,500。在這個(gè)情況下,我們不能使用
WHERE
的指令。那要怎么辦呢?很幸運(yùn)地,SQL 有提供一個(gè)
HAVING
的指令,而我們就可以用這個(gè)指令來達(dá)到這個(gè)目標(biāo)。
HAVING
子句通常是在一個(gè) SQL 句子的最后。一個(gè)含有 HAVING 子句的 SQL 并不一定要包含
GROUP BY
子句。HAVING
的語法如下:
SELECT "欄位1", SUM("欄位2") FROM "表格名" GROUP BY "欄位1" HAVING (函數(shù)條件)
請(qǐng)讀者注意: GROUP BY 子句并不是一定需要的。
在我們Store_Information 表格這個(gè)例子中
Store_Information 表格
store_name | sales | date |
Los Angeles | $1500 | jan-05-1999 |
San Francisco | $300 | jan-08-1999 |
Boston | $700 | jan-08-1999 |
|
新聞熱點(diǎn)
疑難解答
圖片精選