• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      淺談SQL Server中Select語句的分組統(tǒng)計(jì)功能

      2018-02-25 11:25:16謝麗明朱少?gòu)?qiáng)
      科技視界 2018年34期
      關(guān)鍵詞:子句院系語句

      謝麗明 朱少?gòu)?qiáng)

      【摘 要】SQL Server中的Select語句具有強(qiáng)大的查詢統(tǒng)計(jì)功能,是SQL Server的最核心的語句。通過子句的添加Select語句功能不斷豐富完善,其Group by子句實(shí)現(xiàn)了分組統(tǒng)計(jì)的功能,本文通過實(shí)例探討了多加入不同的關(guān)鍵字和關(guān)鍵詞組拓展它的統(tǒng)計(jì)輸出形式。

      【關(guān)鍵詞】SELECT語句;Group子句;分組統(tǒng)計(jì)

      中圖分類號(hào): TP391.1 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 2095-2457(2018)34-0099-003

      DOI:10.19694/j.cnki.issn2095-2457.2018.34.040

      Analysis of Group Statistics Function of Select Statement in SQL Server

      XIE Li-ming ZHU Shao-qiang

      (School of Information Engineering,Pingdingshan University,Pingdingshan Henan 467000,China)

      【Abstract】Select statement in SQL Server has powerful query statistics function,it is the core statement of SQL Server.Continuously enrich and improve the function of Select sentence by adding clauses,Group by clause realizes the function of grouping statistics.This paper discusses how to expand its statistical output form by adding different keywords and key phrases through examples.

      【Key words】SELECT Statement;Group Clause;Grouping Statistics-SQL語言,不但遵循了標(biāo)準(zhǔn)SQL的要求,而且對(duì)其功能進(jìn)行了擴(kuò)展,使其功能更加完善,操作性能更加優(yōu)良。T-SQL語言的核心語句是Select語句,貌似簡(jiǎn)單的一個(gè)Select語句能夠?qū)崿F(xiàn)數(shù)據(jù)管理中要求的查詢、統(tǒng)計(jì)等多種功能,通過Select子句的變化,Select語句在數(shù)據(jù)庫操作中展現(xiàn)多變的魅力。本文就學(xué)生成績(jī)信息管理系統(tǒng)數(shù)據(jù)庫中相關(guān)的數(shù)據(jù)統(tǒng)計(jì)匯總操作淺談Select的分組統(tǒng)計(jì)的功能實(shí)現(xiàn)。

      1 學(xué)生成績(jī)信息數(shù)據(jù)庫簡(jiǎn)介

      學(xué)生成績(jī)管理系統(tǒng)涉及到學(xué)生基本信息、課程基本信息、學(xué)生所屬院系基本信息和學(xué)生選修課程情況,因此學(xué)生成績(jī)數(shù)據(jù)庫需建立四個(gè)基本表,實(shí)例用到了學(xué)生表和院系表,其物理結(jié)構(gòu)設(shè)計(jì)如表1、表2所示。

      2 Select語句的分組統(tǒng)計(jì)

      Select語句實(shí)現(xiàn)分組統(tǒng)計(jì)功能依賴于它的Group by子句,通過該子句的屬性列表中的屬性列為依據(jù)將相同屬性值的數(shù)據(jù)聚集成組,通過聚合函數(shù)進(jìn)行統(tǒng)計(jì)。實(shí)現(xiàn)該功能是應(yīng)注意,在Select的選擇列表中的列必須包含在聚合函數(shù)或 GROUP BY 子句中。

      2.1 單屬性的分組統(tǒng)計(jì)

      分組基于一個(gè)屬性的分組統(tǒng)計(jì)是最簡(jiǎn)單的分組統(tǒng)計(jì)情況,只需根據(jù)Group by之后的屬性進(jìn)行分組,同時(shí)相應(yīng)的聚合函數(shù)給出統(tǒng)計(jì)結(jié)果。

      例1.SELECT 院系名,COUNT(*) AS '人數(shù)'

      FROM 學(xué)生,院系

      WHERE 學(xué)生.院系號(hào)=院系.院系號(hào)

      GROUP BY 院系名

      查詢結(jié)果如圖1所示。

      示例中根據(jù)院系名進(jìn)行分組,統(tǒng)計(jì)出每個(gè)院系的學(xué)生數(shù)。

      2.2 多屬性的分組統(tǒng)計(jì)

      Group by后的屬性超過一個(gè),分組統(tǒng)計(jì)根據(jù)Group by屬性列表按照自右向左順序?qū)嵤┓纸M,即首先按照最右屬性分組,在同一分組內(nèi)再按次右屬性分組,以此類推。這種分組順序和Order by排序順序相反。

      例2.SELECT 院系名,性別,COUNT(*) AS '人數(shù)'

      FROM 學(xué)生,院系

      WHERE 學(xué)生.院系號(hào)=院系.院系號(hào)

      GROUP BY 院系名,性別

      查詢結(jié)果如圖2所示。

      例3.SELECT 院系名,性別,COUNT(*) AS '人數(shù)'

      FROM 學(xué)生,院系

      WHERE 學(xué)生.院系號(hào)=院系.院系號(hào)

      GROUP BY 性別,院系名

      查詢結(jié)果如圖3所示。

      例2和例3的差異就在Group by子句中院系名和性別的順序。例2中性別居右,首先按男、女分組,分別在“男”和“女”中再區(qū)分院系;而例3中相反的結(jié)果,先按院系分組,在同一院系中再區(qū)分“男”和“女”。

      2.3 分組結(jié)果再統(tǒng)計(jì)

      Group by子句中帶有With Cube或With Rollup可以對(duì)分組結(jié)果再統(tǒng)計(jì),實(shí)現(xiàn)分組結(jié)果分層統(tǒng)計(jì)的效果。

      例4.SELECT 院系名,性別,COUNT(*) AS '人數(shù)'

      FROM 學(xué)生,院系

      WHERE 學(xué)生.院系號(hào)=院系.院系號(hào)

      GROUP BY 性別,院系名

      WITH CUBE

      查詢結(jié)果如圖4所示。

      例5.SELECT 院系名,性別,COUNT(*) AS '人數(shù)'

      FROM 學(xué)生,院系

      WHERE 學(xué)生.院系號(hào)=院系.院系號(hào)

      GROUP BY 院系名,性別

      WITH CUBE

      查詢結(jié)果如圖5所示。

      從例4、例5可以看到,with cube給出了按每個(gè)分組屬性的層次小計(jì)和整體的總計(jì)結(jié)果,分組依然按照自右向左的原則。

      例6.SELECT 院系名,性別,COUNT(*) AS '人數(shù)'

      FROM 學(xué)生,院系

      WHERE 學(xué)生.院系號(hào)=院系.院系號(hào)

      GROUP BY 性別,院系名

      WITH ROLLUP

      查詢結(jié)果如圖6所示。

      例7.SELECT 院系名,性別,COUNT(*) AS '人數(shù)'

      FROM 學(xué)生,院系

      WHERE 學(xué)生.院系號(hào)=院系.院系號(hào)

      GROUP BY 院系名,性別

      WITH ROLLUP

      查詢結(jié)果如圖7所示。

      由例6、例7可以看到,雖然使用with rollup也進(jìn)行了分層統(tǒng)計(jì),但分層統(tǒng)計(jì)結(jié)果只給出一個(gè)屬性分組情況。值得注意的時(shí),此時(shí),分組不再是按照Group by子句中屬性自右向左的方向分組,而是以相反的順序進(jìn)行分組。

      3 總結(jié)

      通過實(shí)例的實(shí)驗(yàn)分析,顯示出SQL Server中Select語句功能的豐富性,僅分組統(tǒng)計(jì)就可以變換出多種輸出形式;同時(shí),也顯示出不同實(shí)現(xiàn)方式的差異,提醒使用者在掌握基本原理的基礎(chǔ)上多通過實(shí)際操作發(fā)現(xiàn)T-SQL語句在具體數(shù)據(jù)庫管理系統(tǒng)中的細(xì)小差異。

      【參考文獻(xiàn)】

      [1]程志云,張勇,趙艷忠等.數(shù)據(jù)庫原理與SQL Server 2012應(yīng)用教程[M].機(jī)械工業(yè)出版社,2018.

      [2]郭翠.論SQL Server數(shù)據(jù)庫中Case函數(shù)的作用[J].信息與電腦,2018.5.

      猜你喜歡
      子句院系語句
      命題邏輯中一類擴(kuò)展子句消去方法
      命題邏輯可滿足性問題求解器的新型預(yù)處理子句消去方法
      重點(diǎn):語句銜接
      西夏語的副詞子句
      西夏學(xué)(2018年2期)2018-05-15 11:24:42
      高師音樂院系藝術(shù)實(shí)踐周實(shí)效提升策略
      精彩語句
      清華院系手機(jī)背景圖
      大學(xué)生(2016年7期)2016-04-29 10:12:06
      命題邏輯的子句集中文字的分類
      關(guān)于高等院校院系黨政關(guān)系的思考
      商科院系建立咨詢委員會(huì)的思考
      高州市| 门头沟区| 琼结县| 中山市| 东乡县| 维西| 通辽市| 阿坝县| 徐水县| 朝阳市| 大兴区| 图木舒克市| 通州区| 阳江市| 焦作市| 福建省| 图们市| 新津县| 乌苏市| 静乐县| 安庆市| 盱眙县| 临安市| 吉水县| 九江市| 长兴县| 临西县| 综艺| 日喀则市| 内乡县| 安图县| 安陆市| 梅河口市| 阳城县| 清镇市| 钟祥市| 类乌齐县| 晋中市| 瑞昌市| 肇庆市| 石阡县|