崔巍 数据库系统及应用第4版0704分组汇总查询.pptx

崔巍 数据库系统及应用第4版0704分组汇总查询.pptx

ID:52848883

大小:250.54 KB

页数:17页

时间:2020-03-26

崔巍 数据库系统及应用第4版0704分组汇总查询.pptx_第1页
崔巍 数据库系统及应用第4版0704分组汇总查询.pptx_第2页
崔巍 数据库系统及应用第4版0704分组汇总查询.pptx_第3页
崔巍 数据库系统及应用第4版0704分组汇总查询.pptx_第4页
崔巍 数据库系统及应用第4版0704分组汇总查询.pptx_第5页
资源描述:

《崔巍 数据库系统及应用第4版0704分组汇总查询.pptx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1分组及汇总查询对查询结果进行汇总计算聚合函数汇总一般汇总查询带明细的汇总查询使用GROUPBY的分组汇总查询使用COMPUTEBY的分组汇总查询使用COMPUTEBY和COMPUTE的汇总查询2语法格式SELECT<聚合函数>(expression)}[,...n]FROMtable_source[WHEREsearch_condition]SELECTGroup_id,<聚合函数>(expression)}[,...n]FROMtable_source[WHEREsearch_condition]GROUPBYGroup_id[HAVING…]SELECT...FROMt

2、able_source[WHEREsearch_condition][ORDERBYGroup_id][COMPUTE<聚合函数>(expression)}[,...n]BYGroup_id][COMPUTE<聚合函数>(expression)}[,...n]]3聚合函数聚合函数是对初始的查询结果进行计算然后得到最终的查询结果常用聚合函数COUNT(计数)AVG(计算平均值)MIN(计算最小值)MAX(计算最大值)SUM(求和)CHECKSUM(校验和)STDEV(计算标准差)……4一般汇总查询SELECT<聚合函数>(expression)}[,...n]FROMtable

3、_source[WHEREsearch_condition]5一般汇总查询举例找出供应商所在地的数目。SELECTCOUNT(DISTINCT地址)FROM订货.供应商求支付的工资总数和职工人数,以及所有职工的平均工资、最高工资和最低工资。SELECTSUM(工资),COUNT(*),AVG(工资),MAX(工资),MIN(工资)FROM基础.职工求北京和上海的仓库职工的工资总和。SELECTSUM(工资)FROM基础.职工JOIN仓储.仓库ON职工.仓库号=仓库.仓库号WHERE城市='北京'OR城市='上海'6带明细的汇总查询SELECTselect_listFROMta

4、ble_source[WHEREsearch_condition]COMPUTE<聚合函数>(expression)}[,...n]7带明细的汇总查询举例列出供应商的地址,并计算出供应商所在地的数目。SELECTDISTINCT地址FROM订货.供应商COMPUTECOUNT(地址)列出北京和上海仓库的职工姓名、工资、所在城市信息,并计算他们的职工人数、工资总和以及平均工资。SELECT姓名,工资,城市FROM基础.职工JOIN仓储.仓库ON职工.仓库号=仓库.仓库号WHERE城市='北京'OR城市='上海'COMPUTECOUNT(姓名),SUM(工资),AVG(工资)8使

5、用GROUPBY的分组汇总查询SELECTgroup_id,<聚合函数>(expression)}[,...n]FROMtable_source[WHEREsearch_condition]GROUPBYgroup_id[HAVINGsearch_condition]9使用GROUPBY的分组汇总查询举例查询每个仓库的职工人数和平均工资。SELECT仓库号,COUNT(*),AVG(工资)FROM基础.职工GROUPBY仓库号查询每个仓库工资相同的职工人数,结果按仓库号排序。SELECT仓库号,工资,COUNT(*)FROM基础.职工GROUPBY仓库号,工资ORDERBY仓

6、库号如下分组查询是否允许?SELECT仓库号,工资,COUNT(*)FROM基础.职工GROUPBY仓库号ORDERBY仓库号10SELECT仓库号,COUNT(*)FROM基础.职工GROUPBY仓库号,工资ORDERBY仓库号11使用GROUPBY+HAVING的分组汇总查询举例求至少有4个职工的每个仓库的职工人数和平均工资。SELECT仓库号,COUNT(*),AVG(工资)FROM基础.职工GROUPBY仓库号HAVINGCOUNT(*)>=4查询至少有2个职工的工资大于4250的每个仓库的职工人数和平均工资。SELECT仓库号,COUNT(*),AVG(工资)FRO

7、M基础.职工WHERE工资>4250GROUPBY仓库号HAVINGCOUNT(*)>=212使用COMPUTEBY的分组汇总查询SELECTselect_listFROMtable_source[WHEREsearch_condition]ORDERBYorder_expression[ASC

8、DESC]COMPUTE<聚合函数>(expression)}[,...n]BYexpressionORDERBY的必要性IfORDERBY子句是:ORDERBYa,b,c则COMPUTE…BY子句可以是如下三

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。