数据库应用基础教案04
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
教案
一、课程引入
1、 复习SQL Server 2005用户管理 第 章 节 授课日期 学
科 数据库应用基础 课题: SQL 查询语句
课
时
班 级 授课方式 讲授、实训
教学目的 1、
了解SQL 语言的规范 2、
掌握查询的含义 3、
熟练掌握简单的查询语句 4、
学会在多张表中找出所需要的数据 5、 学会复杂的嵌套查询
重点、难点 重点:掌握简单的查询语句
难点:学会复杂的嵌套查询
教具准备 教室、机房
说明
教学内容<课程引入、教学过程、布置作业>
见附页
2、复习SQL Server 2005的权限管理
二、教学内容
5.1 SQL语言简介
SQL是英文(Structured Query Language)的缩写,意思为结构化查询语言。
SQL语言的主要功能就是同各种数据库建立联系,进行沟通。
SQL为关系型数据库管理系统的标准语言。
SQL的发展过程
1976 年11 月的IBM Journal of R&D上公布的
1979年ORACLE公司首先提供商用的SQL
1986年10月,美国ANSI采用SQL作为关系数据库管理系统的标准语言
1989年,美国ANSI采纳在ANSI X3.135-1989报告中定义的关系数据库管理系统的SQL标准语言
SQL的特点
非过程化语言
统一的语言
所有关系数据库的公共语言
SQL包含4个部分
数据查询语言(SELECT)。
数据操纵语言(INSERT,UPDATE,DELETE)。
数据定义语言(CREATE,ALTER,DROP)
数据控制语言(COMMIT,ROLLBACK)。
什么是查询
查询的含义是指采用一定的方法从数据库中获取所需数据的过程。当对一个数据库执行查询语句时,其执行的结果是从数据库中寻找所需的信息并返回给用户。
查询也可以直接操纵数据,如使用查询可以向表中插入数据、更新和删除表中的数据等。书写Transact-SQL语言的语法规则
SQL查询语句SELECT的子句
SELECT select_list
[ INTO new_table ]
FROM table_source
[ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
[ ORDER BY order_expression [ ASC | DESC ] ]
SELECT 子句语法格式
SELECT [ ALL | DISTINCT ]
[ TOP n [ PERCENT ] [ WITH TIES ] ]
< select_list >
< select_list > ::=
{ * | { table_name | view_name | table_alias }.*
| { column_name | expression | IDENTITYCOL | ROWGUIDCOL }
[ [ AS ] column_alias ]
| column_alias = expression } [ ,...n ]
SELECT 子句参数含义
ALL:指定在结果集中可以显示重复行
DISTINCT:指定在结果集中只能显示唯一行。
TOP n [PERCENT]:指定只从查询结果集中输出前n 行。
WITH TIES:指定从基本结果集中返回附加的行。
< select_list >:为结果集选择的列。
* :指定在FROM 子句内返回所有表和视图内的所有列。
SELECT 子句参数含义
table_name | view_name | table_alias.* :将* 的作用域限制为指定的表或视图。column_name :是要返回的列名。
expression :是列名、常量、函数以及由运算符连接的列名、常量和函数的任意组合,或者是子查询。
IDENTITYCOL :返回标识列。
ROWGUIDCOL:返回行全局唯一标识列。
column_alias :是查询结果集内替换列名的可选名。
INTO 子句
[ INTO new_table ]
参数含义如下:
new_table:根据选择列表中的列和WHERE 子句选择的行,指定要创建的新表名。
FROM 子句
[ FROM { < table_source > } [ ,...n ] ]
其中的参数含义如下:
< table_source >:指定用于SELECT 语句的表、视图、派生表和联接表。WHERE 子句
[ WHERE < search_condition >]
其中的参数含义如下:
GROUP BY 子句语法格式
[ GROUP BY [ ALL ] group_by_expression [ ,...n ] [ WITH { CUBE | ROLLUP } ] ] GROUP BY的参数含义
LL:包含所有组和结果集,甚至包含那些任何行都不满足WHERE 子句指定的搜索条件的组和结果集。。
group_by_expression:是对其执行分组的表达式。
CUBE:指定在结果集内不仅包含由GROUP BY 提供的正常行,还包含汇总行。ROLLUP:指定在结果集内不仅包含由GROUP BY 提供的正常行,还包含汇总行。HAVING 子句
指定组或聚合的搜索条件。
语法格式如下:
[HAVING
参数含义如下:
UNION 运算符语法格式
{ < query specification > | ( < query expression > ) }
UNION [ ALL ]
< query specification | ( < query expression > )
[ UNION [ ALL ] < query specification | ( < query expression > )
[ ...n ] ]
UNION参数含义
< query_specification > | ( < query_expression > ):是查询规范或查询表达式,用以返回与另一个查询规范或查询表达式所返回的数据组合的数据。
UNION:指定组合多个结果集并将其作为单个结果集返回。
ALL:在结果中包含所有的行,包括重复行。
ORDER BY 子句
[ ORDER BY { order_by_expression [ ASC | DESC ] } [ ,...n ] ]
order_by_expression:指定要排序的列。
ASC:指定按递增顺序排序。
DESC:指定按递减顺序排序,