- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 查询表数据
第5章 查询表数据
教学目标
1.掌握SELECT查询表中所有列和指定列的用法。
2.掌握查询时为列添加别名的方法。
3.掌握SELECT语句中DISTINCT和TOP的使用。
4.掌握WHERE子句筛选结果条件的方法。
5.掌握GROUP BY子句的使用。
6.掌握ORDER BY子句的使用。
7.掌握HAVING子句的使用。
教学内容
5.1了解SQL语言
5.2了解SELECT语句的语法
5.3简单查询
5.4按条件查询
5.5规范查询结果
5.6实践案例:查询药品信息
5.7练一练
5.1了解SQL语言
5.1.1 SQL语言的特点
5.1.2SQL语言分类
5.1.3 SQL语句的编写规则
5.1.1 SQL语言的特点
类似于自然语言,易理解,利于操作。
非过程语言,用户不需了解过程和存储路径。
面向集合的语言。
既是内置语言,也属嵌入式语言。
5.1.2SQL语言分类
SQL语言
数据查询语句(SELECT)
数据定义语言(DDL)
数据操纵语言(DML)
事务控制(TC)语言
数据控制语言(DCL)。
5.1.3 SQL语句的编写规则
关键字、对象名和列名不区分大小写。
字符值和日期区分大小写。
SQL语句可一行也可多行;通过跳格和缩进提高可读性;SQL语句以分号结束。
5.2了解SELECT语句的语法
SELECT [ALL | DISTINCT] select_list
FROM table_name
[WHERE search_condition]
[GROUP BY group_by_expression]
[HAVING search_condition]
[ORDER BY order_by_expression [ASC | DESC]]
[ ] |
5.3简单查询
5.3.1查询所有列
5.3.2查询指定列
5.3.3为结果列添加别名
5.3.4查询不重复数据
5.3.5查询计算列
5.3.6分页查询
5.3.1查询所有列
“*”: 所有字段
SELECT * FROM table_name
例5-1:查询当前用户模式中COURSE表的所有列。
SQL SELECT * FROM COURSE;
5.3.2查询指定列
语法如下:
SELECT select_list FROM table_name
例5-2:查询当前用户模式中student表的sno、sname、ssex、sbirth和sadrs字段。
SQL SELECT sno, sname, ssex, sbirth, sadrs
FROM student;
5.3.3为结果列添加别名
ANSI标准 AS
SELECT column1 AS alias1, column2 AS alias2…
FROM table_name
例5-3:查询student表的SNO、SNAME和SADRS字段,要求字段重命名为“学号”、“姓名” 和“籍贯”。
SQL SELECT sno AS “学号”, sname AS “姓名”, sadrs AS “籍贯”
FROM student;
AS关键字可省略。
5.3.4查询不重复数据
DISTINCT,重复行只保留一行
SELECT DISTINCT column1[,column2,…,column n]
FROM table_name
例5-5:查询student表中SADRS字段的数据,别名“学生所属城市”,筛去重复数据。
SQL SELECT DISTINCT SADRS “学生所属城市” FROM student;
提示:在使用DISTINCT关键字时,表中多个NULL的行作为相等处理。
5.3.5查询计算列
select_list,表达式。
例5-6:查询student表中学生学号、姓名和年龄。年龄通过sbirth列的出生日期计算得到。
SQL SELECT sno “学号”, sname “姓名”, FLOOR( MONTHS_BETWEEN( sysdate, sbirth)/12 ) “年龄”
FROM student;
5.3.6分页查询
分页查询的一般格式为:
SELECT * FROM
( SELECT A.*, ROWNUM RN FROM
( SELECT * FROM table_name ) A
WHERE ROWNUM = number_hi
)
WHERE RN = number_lo;
“ROWNUM=number_hi”和“RN=number_lo”控制分页查询的范围。
5.3.6分页查询
例5-7:采用分页查询,查
文档评论(0)