- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验四 SELECT语句的使用
内容二 :SELECT语句的高级查询
一、内容要点分析
1、ORDER BY子句的用法
ORDER BY {列名[ASC|DESC] }[,…n]
可对查询结果按照一个或多个属性列的升序(ASC)或降序(DESC)排列,默认为升序。
当按多列排序时,先按前面的列排序,如果值相同再按后面的列排序。
2、集合函数的使用
对表数据进行检索时,经常需要对结果进行汇总或计算。集合函数用于计算表中的数据,返回单个计算结果。
(1)使用SUM函数计算字段的累加和
SUM([ALL|DISTINCT] 列名)
ALL和DISTINCT用来指定求和范围。
ALL:对所有值求和(默认)
DISTINCT:对唯一值求和
计算列必须是数值型。
对指定列进行纵向求和。
(2)使用AVG函数计算字段的平均值
AVG([ALL|DISTINCT]列名)
ALL和DISTINCT用来指定求平均值范围。
ALL:对所有值求平均值(默认)
DISTINCT:对唯一值求平均值
计算列必须是数值型。
对指定列进行纵向求平均值。
(3)使用COUNT函数统计记录个数
COUNT([ALL|DISTINCT] 列名|*)
COUNT(*):返回表中的记录行数,包括重复的记录和具有NULL值的记录在内,不能和DISTINCT一起使用。
COUNT(ALL 列名):返回取非空值的记录行数。
COUNT(DISTINCT 列名):返回取唯一非空值的记录行数。
(4)使用MAX函数计算字段的最大值
MAX([ALL|DISTINCT]列名)
ALL和DISTINCT用来指定求最大值的范围。
ALL:对所有值求值(默认)
DISTINCT:对唯一值求值
在指定列纵向求最大值。
(5)使用MIN函数计算字段的最小值
MIN([ALL|DISTINCT]列名)
ALL和DISTINCT用来指定求最小值范围。
ALL:对所有值求值(默认)
DISTINCT:对唯一值求值
在指定列纵向求最小值。
注意:使用集合函数作为SELECT的选择列时,若不为其指定列标题,则系统将对该列输出标题“(无列名)”。
3、GROUP BY子句、HAVING子句的用法
GROUP BY 列名 [,…n] [HAVING 筛选条件表达式]
GROUP BY用于对表或视图中的数据按字段分组。
HAVING子句对分组数据进行进一步的筛选。
列名:分组依据,将该字段值相同的记录组成一组,汇总计算后生成一条记录。
使用GROUP BY子句时,SELECT子句后的列名必须是GROUP BY子句已有的列名或计算列。
WHERE子句与HAVING子句的区别:
(1)WHERE子句通常单独使用,HAVING子句与GROUP BY子句一起连用。
(2)WHERE子句不能使用集合函数,而HAVING子句可以。
(3)WHERE子句作用与表,选择满足条件的记录。HAVING子句作用于组,选择满足条件的组。
4、COMPUTE子句的用法
COMPUTE 集合函数 [BY 列名]附加的汇总数据USE 学生信息
GO
SELECT 学生.学号,姓名,课程编号,成绩
FROM 学生 JOIN 学期成绩 ON 学生.学号=学期成绩.学号
WHERE 课程编号= 01
ORDER BY 成绩 DESC,姓名 ASC
GO
(3)语法检查
(4)运行代码
(5)在查询结果显示窗口查看结果并分析结果。
2、统计计算机系各地区的学生总数,输出结果包含:系别、学生来源、人数。
步骤:
(1)打开查询分析器。
(2)在“查询”窗口中输入如下T-SQL语句:
USE 学生信息
GO
SELECT 系别,学生来源,COUNT(*) AS 人数
FROM 学生
WHERE 系别= 计算机系
GROUP BY 学生来源,系别
GO
(3)语法检查
(4)运行代码
(5)在查询结果显示窗口查看结果并分析结果。
3、在“学期成绩”表中统计每个学生的平均成绩及总成绩。
步骤:
(1)打开查询分析器。
(2)在“查询”窗口中输入如下T-SQL语句:
USE 学生信息
GO
SELECT AVG(成绩) AS 平均成绩,SUM(成绩) AS 总成绩
FROM 学期成绩
GROUP BY 学号
GO
(3)语法检查
(4)运行代码
(5)在查询结果显示窗
文档评论(0)