第八章 数据查询.ppt.Convertor.docVIP

  • 0
  • 0
  • 约17.64万字
  • 约 26页
  • 2017-08-10 发布于河南
  • 举报
第八章 数据查询.ppt.Convertor

第八章 数据查询 了解查询的基本概念 掌握连接查询,嵌套查询,集合查询 掌握对查询结果分组、排序 掌握数据更新 ● 本章要点: 本章教学内容: 8.1 简单查询 在关系数据库中,SELECT、FROM和WHERE分别对应于关系数据库术语中的选择、连接和投影。 9.1.1 FROM子句 FROM子句可以: 列出所选列和WHERE子句中所引用列所在的表和视图。 联接类型,这些类型由ON子句中指定的联接条件限定。 FROM子句可以指定: 一个或多个表或视图 若干个表或视图 一个或多个派生表 没有FROM子句的SELECT语句 派生表是FROM子句中的SELECT语句,以别句或用户指定的名称来引用这些派生表。 FROM子句中的SELECT语句的结果集构成了外层SELECT语句所用的表。 没有FROM子句的SELECT语句是那些不从数据颤人的任何表中选择数据的SELECT语句。 这些SELECT语句只从局部变量或不对列进行操作的T-SQL函数中选择数据。 学生表:Student(Sno, Sname, Ssex, Sage, Sdept) 学号 Sno 姓名Sname 性别Ssex 年龄Sage 所在系Sdept 200215121 200215122 200215123 200215125 李勇 刘晨 王敏 张立 男 女 女 男 20 19 18 19 CS CS MA IS 课程表:Course(Cno, Cname, Cpno, Ccredit) 课程号 Cno 课程名Cname 先行课Cpno 学分Ccredit 1 2 3 4 5 6 8 数据库 数学 信息系统 操作系统 数据结构 数据处理 PASCAL语言 5 1 6 8 6 4 2 4 3 4 2 4 学生选课表:SC(Sno, Cno, Grade) 学号Sno 课程号Cno 成绩Grade 200215121 200215121 200215121 200515122 200215122 1 2 3 2 3 92 85 88 90 80 8.1 数据查询 8.1.1 单表查询 8.1.2 连接查询 8.1.3 嵌套查询 8.1.4 集合查询 语句格式 SELECT [ALL|DISTINCT] 目标列表达式 [,目标列表达式] … FROM 表名或视图名[, 表名或视图名 ] … [ WHERE 条件表达式 ] [ GROUP BY 列名1 [ HAVING 条件表达式 ] ] [ ORDER BY 列名2 [ ASC|DESC ] ]; 语句格式 SELECT子句:指定要显示的属性列 FROM子句:指定查询对象(基本表或视图) WHERE子句:指定查询条件 GROUP BY子句:对查询结果按指定列的值分组,该属性列值相等的元组为一个组。通常会在每组中作用集函数。 HAVING短语:筛选出只有满足指定条件的组 ORDER BY子句:对查询结果表按指定列值的升序或降序排序 8.1.1 单表查询 查询仅涉及一个表,是一种最简单的查询操作 一、选择表中的若干列 二、选择表中的若干元组 三、对查询结果排序 四、使用集函数 五、对查询结果分组 1. 查询指定列 [例1] 查询全体学生的学号与姓名。 SELECT Sno,Sname FROM Student;? ? [例2] 查询全体学生的姓名、学号、所在系。 SELECT Sname,Sno,Sdept FROM Student; 2. 查询全部列 [例3] 查询全体学生的详细记录。 SELECT Sno,Sname,Ssex,Sage,Sdept FROM Student; 或 SELECT * FROM Student; 3. 查询经过计算的值 SELECT子句的目标列表达式为表达式 算术表达式 字符串常量 函数 列别名等 3. 查询经过计算的值 [例4] 查全体学生的姓名及其出生年份。 SELECT Sname,2000-Sage FROM Student;? 输出结果: Sname 2000-Sage --------- ------------- 李勇 1986 刘晨 1988 王名 1988 张立 1988 3. 查询经过计算的值 [例5] 查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名。 SEL

文档评论(0)

1亿VIP精品文档

相关文档