- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
复习:
1、动作查询分为哪几种?
2、sql语言有哪些功能?
3、SELECT语句的格式是什么?各子句的功能是什么。
新授课:
第六章 SQL语言
目前关系数据库管理系统都采用SQL语言作为数据库语言,SQL语言成为关系数据库的主流语言(即数据库标准语言),SQL语言是一种介于关系代数与关系演算之间的结构化查询语言,其功能有数据定义、数据操纵、查询和控制功能。
任务一 简单数据查询SELECT
一、SELECT命令格式
1、SELECT命令格式:
SELECT ALL/DISTINCT */字段列表/表达式
FROM 表名称
WHERE 选择运算条件表达式
GROUP BY 字段1[,字段2……]
HAVING 条件表达式
ORDER BY字段1 [ASC/DESC][,字段2[ASC/DESC]……]
说明:
(1)SELECT单独使用时,用于计算表达式的值;结合表使用时,用于实现投影操作。
(2)DISTINCT表示无重复,即忽略重复值。
(3)AS 用于指定结果集各列的标题文本。
(4)FROM用于指定操作所需的表。
(5)WHERE用于指定选择操作的条件,在分组之前进行约束。
(6)GROUP BY用于指定分组字段;当在查询语句中用到GROUP BY时,在SELECT子句中除了聚合函数外,其它的字段列表必须出现在GROUP BY子句中。
(7)所谓分组(分类)是将指定字段的值相等的记录划分为一个组。
(8)HAVING用于对分组之后结果集的输出条件表达式,HAVING必须跟在GROUP BY之后使用。
(9)ORDER BY用于指定输出结果集的排列次序。
(10)在查询语句中,如果采用了上述格式中的子句,则必须按照格式指定的顺序来引用。
2、聚合函数
在SQL中,聚合函数主要有:求和函数SUM(DISTINCT/字段表达式)、求平均函AVG()、求最大值函数MAX()、求最小值函数MIN()、统计记录个数函数COUNT()。
二、SELECT命令的应用
1、计算表达式的值
(1)select date(),now(),time()
(2)select year(date())
(3)select year(date()) 年
(4)select year(date())-year(#1988-12-4#)
2、投影操作(操作列)
例6-1检索所有学生的信息
例6-2显示学生的学号、姓名和班级
例6-3显示学生的学号、姓名和班级,各列的标题分别为汉字的学号、姓名和班级。
SQL语句分别如下:
6-1:select stu01.* from stu01
6-2:select xh,xm,bj from stu01
6-3:select stu01.xh as 学号,stu.xm as 姓名,bj as 班级 from stu01
说明:
(1)“stu01.*”也可以用“*”替代。
(2)当显示的列来自多张表时,字段(列)的引用可以用“表名称.列名”
(3)AS用于指定投影列的标题。
3、选择操作(操作行)
例6-4:查询女学生的信息
例6-6:查询1981年出生的女学生信息学号、姓名和班级。
例6-6:检索所有姓“李”的学生信息。
例6-7:检索所有姓名第二个汉字为“小”字的学生信息。
SQL语句分别如下:
6-4:select * from stu01 where xb=女
6-5:select xh,xm,bj from stu01 where xb=女 and datepart(year,csrq)=1981 或:select xh,xm,bj from stu01 where xb=女 and csrq between #1981-1-1# and #1981-12-31# 或:select xh,xm,bj from stu01 where xb=女 and csrq = #1981-1-1# and csrq =#1981-12-31#
6-6:select * from stu01 where xm like 李* (模糊查询)
6-7:select * from stu01 where xm like ?小* (模糊查询) 或:select * from stu01 where right(left(xm,2),1)=小 或:select * from stu01 where substring(xm,2,1)=小
4、分类汇总操作
例6-8:求每个学生已经学习的课程数、总分、平均分、最高分、最低分
例6-9:统计成绩表中的课程数
例6-10:求平均分高于78分的“0701”和“0702”两门课程的平
文档评论(0)