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

Mysql中order by、group by、having的區(qū)別深入分析

 更新時間:2013年06月13日 10:01:44   作者:  
本篇文章是對Mysql中order by、group by、having的區(qū)別進行了詳細的分析介紹,需要的朋友參考下

order by 從英文里理解就是行的排序方式,默認的為升序。 order by 后面必須列出排序的字段名,可以是多個字段名。 
group by 從英文里理解就是分組。必須有“聚合函數(shù)”來配合才能使用,使用時至少需要一個分組標志字段。

什么是“聚合函數(shù)”?
像sum()、count()、avg()等都是“聚合函數(shù)”
使用group by 的目的就是要將數(shù)據(jù)分類匯總。

一般如:
select 單位名稱,count(職工id),sum(職工工資) form [某表]
group by 單位名稱
這樣的運行結果就是以“單位名稱”為分類標志統(tǒng)計各單位的職工人數(shù)和工資總額。

在sql命令格式使用的先后順序上,group by 先于 order by。

select 命令的標準格式如下: 
SELECT select_list
[ INTO new_table ]
FROM table_source
[ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]

1. GROUP BY 是分組查詢, 一般 GROUP BY 是和聚合函數(shù)配合使用 
group by 有一個原則,就是 select 后面的所有列中,沒有使用聚合函數(shù)的列,必須出現(xiàn)在 group by 后面(重要)

例如,有如下數(shù)據(jù)庫表: 
A    B
1    abc
1    bcd 
1    asdfg 
如果有如下查詢語句(該語句是錯誤的,原因見前面的原則)

select A,B from table group by A
 
該查詢語句的意圖是想得到如下結果(當然只是一相情愿) 
A     B
       abc
1     bcd

       asdfg 
右邊3條如何變成一條,所以需要用到聚合函數(shù),如下(下面是正確的寫法):

select A,count(B) as 數(shù)量 from table group by A
這樣的結果就是    
A 數(shù)量
1    3

2. Having
 
where 子句的作用是在對查詢結果進行分組前,將不符合where條件的行去掉,即在分組之前過濾數(shù)據(jù),條件中不能包含聚組函數(shù),使用where條件顯示特定的行。 

having 子句的作用是篩選滿足條件的組,即在分組之后過濾數(shù)據(jù),條件中經(jīng)常包含聚組函數(shù),使用having 條件顯示特定的組,也可以使用多個分組標準進行分組。

having 子句被限制子已經(jīng)在SELECT語句中定義的列和聚合表達式上。通常,你需要通過在HAVING子句中重復聚合函數(shù)表達式來引用聚合值,就如你在SELECT語句中做的那樣。例如: 
SELECT A COUNT(B) FROM TABLE GROUP BY A HAVING COUNT(B)>2

相關文章

  • MySQL?數(shù)據(jù)庫的對庫的操作及其數(shù)據(jù)類型

    MySQL?數(shù)據(jù)庫的對庫的操作及其數(shù)據(jù)類型

    這篇文章主要介紹了MySQL?數(shù)據(jù)庫的對庫的操作及其數(shù)據(jù)類型,下面文字圍繞數(shù)據(jù)庫的對庫的操作及其數(shù)據(jù)類型的相關資料展開詳細介紹,需要的小伙伴可以參考一下,希望對你有所幫助
    2021-12-12
  • MySQL復合查詢和表的內(nèi)外連接示例詳解

    MySQL復合查詢和表的內(nèi)外連接示例詳解

    在數(shù)據(jù)庫管理和數(shù)據(jù)分析中,單表查詢往往無法滿足復雜的數(shù)據(jù)查詢需求,因此多表查詢和子查詢成為了解決問題的關鍵技術,MySQL支持多種多表查詢方式,如內(nèi)連接、外連接(左外連接和右外連接)以及自連接,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-10-10
  • 詳解數(shù)據(jù)庫連接的URL的寫法及總結

    詳解數(shù)據(jù)庫連接的URL的寫法及總結

    這篇文章主要介紹了詳解數(shù)據(jù)庫連接的URL的寫法及總結的相關資料這里提供了四種方法1、oracle.2、MySQL.3、SQL Server.4、DB2,需要的朋友可以參考下
    2017-07-07
  • mysql用一個表更新另一個表的方法

    mysql用一個表更新另一個表的方法

    下面小編就為大家?guī)硪黄猰ysql用一個表更新另一個表的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • MySQL數(shù)據(jù)庫的多表操作

    MySQL數(shù)據(jù)庫的多表操作

    這篇文章主要介紹了MySQL數(shù)據(jù)庫的多表操作,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下,希望對你的學習有所幫助
    2022-08-08
  • Linux下MySQL5.7.18 yum方式從卸載到安裝過程圖解

    Linux下MySQL5.7.18 yum方式從卸載到安裝過程圖解

    這篇文章主要介紹了Linux下MySQL5.7.18 yum方式從卸載到安裝過程圖解,需要的朋友可以參考下
    2017-06-06
  • SQLServer注釋快捷鍵操作

    SQLServer注釋快捷鍵操作

    這篇文章主要介紹了SQLServer注釋快捷鍵操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • MySQL中case?when對NULL值判斷的踩坑記錄

    MySQL中case?when對NULL值判斷的踩坑記錄

    最近在學習Hive基礎知識時,遇到了遇到了Case?When?Else?End語法,這篇文章主要給大家介紹了關于MySQL中case?when對NULL值判斷的踩坑記錄,需要的朋友可以參考下
    2021-12-12
  • 淺談Mysql使用B+樹來實現(xiàn)索引的原因

    淺談Mysql使用B+樹來實現(xiàn)索引的原因

    這篇文章,主要來探討一下為什么Mysql使用B+樹來實現(xiàn)索引,這里討論的目標是Mysql的InnoDB存儲引擎.可以想象一下,如果你是Mysql的開發(fā)人員,你會怎么去選擇合適的數(shù)據(jù)結構呢,感興趣的小伙伴跟著小編一起來探討吧
    2023-05-05
  • MySQL在Centos7環(huán)境安裝的完整步驟記錄

    MySQL在Centos7環(huán)境安裝的完整步驟記錄

    在CentOS7環(huán)境下安裝MySQL是一項常見的任務,尤其對于那些沒有網(wǎng)絡連接或者需要在隔離環(huán)境中的開發(fā)者來說,離線安裝MySQL顯得尤為重要,這篇文章主要介紹了MySQL在Centos7環(huán)境安裝的完整步驟,需要的朋友可以參考下
    2024-10-10

最新評論

宁强县| 镇江市| 香河县| 德庆县| 延庆县| 江源县| 德安县| 朝阳县| 鹤岗市| 安图县| 临安市| 收藏| 花莲市| 赣榆县| 河曲县| 疏附县| 乐至县| 凤山县| 泗水县| 绥棱县| 吉隆县| 六枝特区| 疏附县| 许昌县| 北川| 宜君县| 松潘县| 辽源市| 佛教| 镇远县| 长岛县| 石河子市| 双柏县| 汽车| 淄博市| 景谷| 梅河口市| 潮安县| 赫章县| 泰来县| 章丘市|