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

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

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

SQL Having用法

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

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

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

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

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

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

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

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

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

補充:SQL Having用法

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

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

那么寫法就是

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

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

相關文章

最新評論

黔西| 榆中县| 隆昌县| 吉水县| 红安县| 枣庄市| 青河县| 枣强县| 兴和县| 客服| 阿图什市| 乐清市| 安国市| 靖边县| 南和县| 邯郸县| 内丘县| 富蕴县| 蕉岭县| 揭东县| 虞城县| 家居| 缙云县| 鹰潭市| 济南市| 吴桥县| 海丰县| 西藏| 新绛县| 慈利县| 聂拉木县| 仪陇县| 定兴县| 凌源市| 西峡县| 自治县| 孟津县| 青浦区| 四平市| 呼玛县| 余江县|