网站大量收购闲置独家精品文档,联系QQ:2885784924

《DB第3章3关系数据库标准语言——SQL.ppt

《DB第3章3关系数据库标准语言——SQL.ppt

  1. 1、本文档共55页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理与应用 第3章 关系数据库标准语言——SQL 3.4 SQL的数据查询功能 3.4.1 SELECT语句介绍 3.4.2 SQL的查询实例及分析 3.4 SQL的数据查询功能 3.4.1 SELECT语句介绍 1. SELECT语句的语法 SELECT〈目标列组〉 FROM〈数据源〉 [WHERE〈元组选择条件〉] [GROUP BY〈分列组〉[HAVING 〈组选择条件〉]] [ORDER BY〈排序列1〉〈排序要求1〉 [,…n]]; 语法说明 (1) SELECT子句:指明目标列(字段、表达式、函数表达式、常量)。两个基本表中相同的列名表示为:〈表名〉.〈列名〉 (2) FROM子句:指明数据源。表间用“,”分割。数据源不在当前数据库中,使用“〈数据库名〉.〈表名〉”表示。一表多用,用别名标识。定义表别名:〈表名〉〈别名〉 (3) WHERE子句:元组选择条件。 (4) GROUP BY子句:结果集分组。当目标列中有统计函数,则统计为分组统计,否则为对整个结果集统计。子句后带上HAVING子句表达组选择条件(带函数的表达式)。 (5) HAVING短语:筛选出只有满足指定条件的组。 (6) ORDER BY子句:对查询结果表排序。当排序要求为ASC时升序排序;排序要求为DESC时降序排列。 2. SELECT语句的操作符 (1) 算术操作符 +(加号)、-(减号)、*(乘号)和 /(除号)。 (2) 比较操作符 =(等于)、(大于)、(小于)、=(小于等于)、=(大于等于)、!=(不等于)、(小于大于)、!(不大于)和 !(不小于),共9种操作符。 (3) 逻辑操作符 (4) 组合查询操作符和其他SQL操作符 ——是针对传统关系运算的操作符 1) UNION:并查询,并在结果集中去掉重复行。 2) MINUS:差查询操作。 3) INTERSECT:交查询操作。 4) *:取全部字段。格式为: * 或〈表名〉.* 5) ALL:全部。保留重复值(有统计函数时要求计算重复值)。 格式为: ALL〈字段〉或 ALL〈字段组〉 6) DISTINCT:去掉重复值。在结果集中去掉重复值,或在统计函数中不计重复值。 格式为:DISTINCT〈字段〉或 DISTINCT〈字段组〉 3.4.2 SQL的查询实例及分析 学生课程库结构为:学生(学号,姓名,年龄,所在系); 课程(课程号,课程名,先行课); 选课(学号,课程号,成绩). 1. 简单查询:查询过程中只涉及到一个表的查询语句,是一种最简单的查询操作 一、选择表中的若干列 二、选择表中的若干元组 三、对查询结果排序 四、使用集函数 五、对查询结果分组 【例3-9】求数学系学生的学号和姓名。 SELECT 学号,姓名 FROM 学生 WHERE 所在系=数学系; 【例3-10】求选修了课程的学生学号。 SELECT DISTINCT 学号 FROM 选课; DISTINCT:消除取值相同的记录。 例子 【例3-11】求选修C1课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列。 SELECT 学号,成绩 FROM 选课 WHERE 课程号=C1 ORDER BY 成绩 DESC,学号 ASC; order by:按某种顺序显示。使用格式: order by 列名 asc|desc,[ , …] asc:按升序排序; desc:按降序排序。 【例3-12】求选修课程C1且成绩在80~90之间的学生学号和成绩,并将成绩乘以系数0.8输出。 SELECT 学号,成绩*0.8 FROM 选课 WHERE 课程号 = C1 AND 成绩 BETWEEN 80 AND 90; between …and:查找值在指定范围内的元组。 例子 【例3-13】求数学系或计算机系姓张的学生的信息。 SELECT * FROM 学生 WHERE 所在系 IN (数学系,计算机系) AND 姓名 LIKE 张%; In: 用来查找值

文档评论(0)

185****7617 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档