最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SQL Having用法示例小結(jié)

 更新時(shí)間:2024年12月16日 09:46:21   作者:我名字很好聽  
這篇文章主要介紹了SQL Having用法示例小結(jié),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧

SQL Having用法

HAVING子句用于過濾分組之后的數(shù)據(jù)。

1、如果過濾條件中使用了聚合函數(shù),或行已經(jīng)被分組,則必須使用HAVING來替換WHERE。否則,報(bào)錯(cuò)。

2、HAVING 必須聲明在 GROUP BY 的后面。

# 查詢各個(gè)部門中最高工資大于10000的部門信息
SELECT department_id, MAX(salary) max_salary
FROM employees
GROUP BY department_id
# 對(duì)分組后的數(shù)據(jù)進(jìn)行篩選,選出部門中最高工資大于10000的部門
HAVING max_salary > 10000;

開發(fā)中,我們使用HAVING的前提是SQL中使用了GROUP BY。 

如果沒有使用GROUP BY,使用HAVING,則整個(gè)表中的所有記錄會(huì)被當(dāng)成一組,然后對(duì)這一組記錄根據(jù)HAVING中的條件進(jìn)行篩選。

SELECT department_id, MAX(salary) max_salary
FROM employees
HAVING max_salary > 10000;

HAVING 不能單獨(dú)使用,必須要跟 GROUP BY 一起使用。 

1、當(dāng)過濾條件中有聚合函數(shù)時(shí),則此過濾條件必須聲明在HAVING中。
2、當(dāng)過濾條件中沒有聚合函數(shù)時(shí),則此過濾條件聲明在WHERE中或HAVING中都可以。但是,建議大家聲明在WHERE中。 

補(bǔ)充:SQL Having用法

拿個(gè)業(yè)務(wù)場(chǎng)景說這個(gè)案例,比如我們有個(gè)表里面可能有批改過的數(shù)據(jù),批改過得數(shù)據(jù)不會(huì)隨著新批改的數(shù)據(jù)覆蓋,而是逐條插入表中,如果想找出包含最早批改的數(shù)據(jù)和最新批改數(shù)據(jù)的話,那么我們就需要用到了havinng 用法,假設(shè)最開始的批單號(hào)是000,批單號(hào)是累加的

比如我們有個(gè)表 table 表里面有兩個(gè)字段 訂單號(hào)(order_no) 和 批單號(hào)(endorseq_no)

那么寫法就是

select order_no
from table
group by order_no
having sum(case when endorseq_no = '000' then 1 
                else 0 end) >= 1  --這個(gè)是判斷必須包含最初的批單
  and count(*) >= 2    --這個(gè)是判斷除了最初的批單之外還需要有新批改的批單

到此這篇關(guān)于SQL Having用法的文章就介紹到這了,更多相關(guān)SQL Having 用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

玛多县| 十堰市| 木里| 深水埗区| 米泉市| 新闻| 邹平县| 韶关市| 井陉县| 梨树县| 宣武区| 准格尔旗| 昌宁县| 伊宁县| 苏州市| 望谟县| 霍林郭勒市| 仙游县| 苍南县| 汉川市| 内丘县| 海伦市| 乐昌市| 琼海市| 涿州市| 富川| 屏山县| 柘城县| 无棣县| 凌源市| 海淀区| 宜良县| 开远市| 库尔勒市| 建瓯市| 敦化市| 宣恩县| 五家渠市| 论坛| 泗水县| 乌拉特前旗|