8数据查询3重点.pptVIP

  • 1
  • 0
  • 约4.48千字
  • 约 16页
  • 2016-10-10 发布于湖北
  • 举报
LOGO 《SQL Server数据库》课程 数据查询3 网络工程学院 王丽 任务描述 1. 连接查询 连接谓词、以JOIN关键字指定的连接 2. 联合查询 使用UNION、使用UNION ALL 3. 子查询 ? [NOT] IN子查询 ? [NOT] EXISTS子查询 ? 比较运算子查询 语法结构 SELECT语句的基本语法结构: select [all|distinct] 字段列表 [into 新表] from 数据源 [where 条件表达式] [group by 分组表达式] [having 搜索表达式] [order by 排序表达式[asc|desc]] 数据查询的实现 1、连接查询(涉及多个表的查询)——连接谓词 举例演示:查找TSJY数据库每个学生的情况以及借阅的图书情况。 课堂练习:查找TSJY数据库借阅了图书的学生的情况及所借阅的书号及借书日期。 数据查询的实现 1、连接查询——以JOIN关键字指定的连接 内连接 语法格式:select 列名列表 from 表名 [inner|outer] join 表名1 on 连接条件 [ join 表名2 on 连接条件2 […n]] 举例演示:查找TSJY数据库每个学生的情况以及借阅的图书情况。 课堂练习:查询学生借书情况,列出学生姓名、专业及所借书的书名。 数据查询的实现 1、连接查询——以JOIN关键字指定的连接 外连接——左外连接(LEFT OUTER JOIN) 语法格式:from 表1 left [outer] join 表2 on 连接条件 举例演示:查询每个学生的情况及借书的情况,未借书学生情况也要列出。 课堂练习:查询每本图书的情况及借书的情况,未被借出的书也要列出。 数据查询的实现 1、连接查询——以JOIN关键字指定的连接 外连接——右外连接(RIGHT OUTER JOIN) 语法格式:from 表1 right [outer] join 表2 on 连接条件 举例演示:查询每个学生的情况及借书的情况,未借书学生情况也要列出。 课堂练习:查询每本图书的情况及借书的情况,未被借出的书也要列出。 数据查询的实现 1、连接查询——以JOIN关键字指定的连接 外连接——完全外连接(FULL OUTER JOIN)语法格式:from 表1 full [outer] join 表2 on 连接条件 举例演示:查询每个学生的借书的情况,未借书学生也要列出,未被借出的书也要列出。 数据查询的实现 2、联合查询——使用UNION 功能:将两个或两个以上SELECT语句的查询结果合并成一个结果 语法格式:SELECT查询语句 union SELECT查询语句[…n] 举例演示:查询XS表中专业是电器维修和专业是计算机的同名赵家林的学号、姓名、性别、专业、出生日期。 课堂练习:查询XS表中所有的女生及专业是计算机的学生的学号和姓名。 数据查询的实现 2、联合查询——使用UNION ALL 功能:将两个或两个以上SELECT语句的查询结果合并成一个结果 语法格式:SELECT查询语句 union all SELECT查询语句[…n] 举例演示:查询XS表中专业是电器维修和专业是计算机的同名赵家林的信息。 课堂练习:查询XS表中所有的女生及专业是计算机的学生的学号和姓名。 数据查询的实现 3、子查询([NOT] IN子查询) 进行一个给定值是否在子查询结果集中的判断 格式:表达式 [ NOT ] IN (子查询) 举例演示: 查询学号为000101的学生借阅的图书情况。 课堂练习: 查询借阅了书号为P10001的图书的学生情况 数据查询的实现 3、子查询([NOT] EXISTS子查询) 功能:判断子查询结果集合中是否有数据行返回 格式:[ NOT ] EXISTS ( 子查询 ) 举例演示: 查询学号为000101的学生借阅的图书书名。 课堂练习: 查询借阅了书号为P10001图书的学生姓名。 数据查询的实现 3、子查询(比较运算子查询) 比较运算 语义 ANY 大于子查询中的某个值 ALL 大于子查询中的所有值 ANY 小于子查询中的某个值 ALL 小于子查询中的所有值 =ANY 等于子查询中的某个值 =ALL 等于子查询中的所有值 =ANY 大于等于子查询中的某个值 =ALL 大于等于子查询中的所有值 =ANY 小于等于子查询中的某个值 =ALL 小于等于子查询中的所有值 !=ANY 不等于子查询中的某个值 !=ALL 不等于子查询中的所有值 数据查

文档评论(0)

1亿VIP精品文档

相关文档