• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Prayer

            在一般中尋求卓越
            posts - 1256, comments - 190, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            分組查詢

            Posted on 2008-08-12 15:49 Prayer 閱讀(859) 評論(0)  編輯 收藏 引用 所屬分類: 數(shù)據(jù)庫,SQL
            *************************************************************************************
            分組查詢
            *************************************************************************************

            在select 語句中可以使用group by 子句將行劃分成較小的組,然后,使用聚組函數(shù)返回每一個組的匯總信息,另外,可以使用having子句限制返回的結(jié)果集。group by 子句可以將查詢結(jié)果分組,并返回行的匯總信息SQLServer 按照group by 子句中指定的表達(dá)式的值分組查詢結(jié)果。

            -------------------------------------------------------------------------------------
            分組查詢一般是用來進(jìn)行統(tǒng)計需求的,要進(jìn)行分組查詢必須使用group by子句或having子句,在分組統(tǒng)計時要用到SQL的多行存儲函數(shù)。在where條件中不能使用多行存儲函數(shù).

            查詢語句的select 和group by ,having 子句是聚組函數(shù)唯一出現(xiàn)的地方,在where 子句中不能使用聚組函數(shù)。

            在帶有g(shù)roup by 子句的查詢語句中,在select 列表中指定的列要么是group by 子句中指定的列,要么包含聚組函數(shù).
            ------------------------------------------------------------------------------------


            部門表department:

            department_id department_name
            10 開發(fā)部
            20 測試部
            30 用服部
            40 財務(wù)部
            50 培訓(xùn)部

            雇員表employees:(department_id為外鍵)

            id employees_name department_id
            1 cheng 10
            2 zhou 50
            3 liguo 10
            4 wang 20
            5 feng 30
            6 ling 30
            7 wu 20
            8 tang 20
            9 yang 40
            10 tan 50
            ------------------------------------------------------------------------------------

            按部門編號統(tǒng)計出表employees中的每個部門的人數(shù)(group by分組查詢)
            select department_id, count(*) from employees
            group by department_id;

            顯示出部門人數(shù)少于5人的部門編號以及人數(shù)( 按照department_id來分組,having count(*)<5做為限制條件 )
            select department_id 部門號, count(*) 部門人數(shù) from employees
            group by department_id
            having count(*)<5;
            --------------------------------------
            (注意:having必須在group by子句的后面)
            --------------------------------------
            圖:
            部門號 部門人數(shù)
            ------------------------------
            10 2
            20 3
            30 2
            40 1
            50 2
            -------------------------------------------------------------------------------------
            where子句和having子句可以同時使用,where子句是對要分組的行進(jìn)行過濾,即選擇要分組的行;
            而having子句是對分組后的數(shù)據(jù)進(jìn)行過濾。此時where子句必須在group by...having子句之前
            -------------------------------------------------------------------------------------
            顯示出所有工資大于5000,且部門人數(shù)大于5個的部門號,部門最低工資和部門人數(shù)

            select department_id 部門號(記住department_id 和部門號之間要空格), min(salary) 最低工資,count(*) 部門人數(shù) from employees
            where salary >5000
            group by department_id
            having count(*)>5;

            圖:
            --------------------------------------
            部門號 最低工資 部門人數(shù)
            80 6100 34
            100 6800 6

            group by 按照哪個字段來排序查詢,一般的group by和having一起使用,注意在查詢中只能查詢與group by和having有關(guān)的字段。
            --------------------------------------

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


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



            查詢每個部門的每種職位的雇員數(shù)(待測試...)
            select deptno,job,count(*) from emp group by deptno,job;
            久久久久久久久久久精品尤物| 久久亚洲春色中文字幕久久久| 日韩一区二区久久久久久 | 狠狠色丁香久久婷婷综合五月 | 777米奇久久最新地址| 久久精品国产69国产精品亚洲| 久久精品国产欧美日韩| 久久99久国产麻精品66| 色综合久久中文色婷婷| 亚洲va久久久久| 99国内精品久久久久久久| 亚洲AV无码久久| 久久九九免费高清视频| 精品久久久久久中文字幕人妻最新| 久久久久久久综合综合狠狠| 青草国产精品久久久久久| 久久久青草青青国产亚洲免观| 亚洲国产精品高清久久久| 伊人精品久久久久7777| 久久国产精品一区二区| 新狼窝色AV性久久久久久| 久久久久亚洲精品中文字幕| 久久99精品国产一区二区三区 | 久久精品国产亚洲5555| AV无码久久久久不卡蜜桃| 久久久久久久免费视频| 久久精品中文字幕第23页| 热久久国产精品| 2021少妇久久久久久久久久| 欧美熟妇另类久久久久久不卡 | 99久久99久久精品国产| 国产精品福利一区二区久久| 久久精品人人做人人爽97| 99久久做夜夜爱天天做精品| 国产精品美女久久福利网站| 亚洲国产精品无码久久青草| 亚洲成av人片不卡无码久久| 欧美与黑人午夜性猛交久久久 | 亚洲国产成人久久综合碰碰动漫3d| 亚洲欧美成人综合久久久| 日韩人妻无码精品久久免费一 |