SQL語(yǔ)句詳細(xì)說(shuō)明[部分]
我們現(xiàn)在回到函數(shù)上。記得我們用
SUM
這個(gè)指令來(lái)算出所有的 Sales (營(yíng)業(yè)額)吧!如果我們的需求變成是要算出每一間店 (store_name) 的營(yíng)業(yè)額 (sales),那怎么辦呢?在這個(gè)情況下,我們要做到兩件事:第一,我們對(duì)于 store_name 及 Sales 這兩個(gè)欄位都要選出。第二,我們需要確認(rèn)所有的 sales 都要依照各個(gè) store_name 來(lái)分開(kāi)算。這個(gè)語(yǔ)法為:
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 |
我們就打入
SELECT store_name, SUM(Sales) FROM Store_Information GROUP BY store_name
結(jié)果 :
store_name SUM(Sales)
Los Angeles $1800
San Diego $250
Boston $700
當(dāng)我們選不只一個(gè)欄位,且其中至少一個(gè)欄位有包含函數(shù)的運(yùn)用時(shí),我們就需要用到 GROUP BY 這個(gè)指令。在這個(gè)情況下,我們需要確定我們有 GROUP BY 所有其他的欄位。換句話(huà)說(shuō),除了有包括函數(shù)的欄位外,我們都需要將其放在 GROUP BY 的子句中。
SQL 語(yǔ)句教程 (12) HAVING
那我們如何對(duì)函數(shù)產(chǎn)生的值來(lái)設(shè)定條件呢?舉例來(lái)說(shuō),我們可能只需要知道哪些店的營(yíng)業(yè)額有超過(guò) $1,500。在這個(gè)情況下,我們不能使用
WHERE
的指令。那要怎么辦呢?很幸運(yùn)地,SQL 有提供一個(gè)
HAVING
的指令,而我們就可以用這個(gè)指令來(lái)達(dá)到這個(gè)目標(biāo)。
HAVING
子句通常是在一個(gè) SQL 句子的最后。一個(gè)含有 HAVING 子句的 SQL 并不一定要包含
GROUP BY
子句。HAVING
的語(yǔ)法如下:
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 |
我們打入
SELECT store_name, SUM(sales) FROM Store_Information GROUP BY store_name HAVING SUM(sales) > 1500
結(jié)果 :
store_name SUM(Sales)
Los Angeles $1800
相關(guān)文章
聊聊Navicat統(tǒng)計(jì)的行數(shù)竟然和表實(shí)際行數(shù)不一致的問(wèn)題
Navicat作為數(shù)據(jù)庫(kù)管理工具,在業(yè)界廣受歡迎,這篇文章主要介紹了Navicat統(tǒng)計(jì)的行數(shù)竟然和表實(shí)際行數(shù)不一致的問(wèn)題,需要的朋友可以參考下2021-12-12設(shè)置CA證書(shū)來(lái)強(qiáng)化PostgreSQL的安全性的教程
這篇文章主要介紹了設(shè)置CA證書(shū)來(lái)強(qiáng)化PostgreSQL的安全性的教程,主要用到了CA私鑰,需要的朋友可以參考下2015-04-04高效的數(shù)據(jù)同步工具DataX的使用及實(shí)現(xiàn)示例
這篇文章主要為大家介紹了高效的數(shù)據(jù)同步工具DataX的使用及實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03SQL行轉(zhuǎn)列、列轉(zhuǎn)行的簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要給大家介紹了關(guān)于SQL行轉(zhuǎn)列、列轉(zhuǎn)行的簡(jiǎn)單實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用SQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05