第4章sql关系数据库查询语言.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章 SQL关系数据库查询语言 4.1 SQL语言的特点 SQL是英文(Structured Query Language)的缩写,意思为结构化查询语言,是对存放在计算机数据库中的数据进行组织、管理和查询的一种工具,是一种对关系数据库操作的语言。 需要掌握的SQL语句: (1)数据查询 SELECT (2)数据定义 CREATE、DROP、ALTER (3)数据修改 INSERT、UPDATE、DELETE 4.2 SQL的查询功能 SQL语法格式 SELECT [ALL|DISTINCT] [TOP数值|PERCENT]字段表达式[,字段表达式 AS 虚拟字段名 ] … FROM 基本表名或视图名[,基本表名或视图名]… [WHERE 条件表达式] [GROUP BY 字段1[HAVING 条件表达式]] [ORDER BY 字段2[ASC|DESC]] [INTO ARRAY 数组名]|[INTO CURSOR 临时表名]| [INTO DBF|TABLE 永久表名]|[TO FILE 文本文件名 [ADDITIVE]]|[TO PRINTER[PROMPT]] 4.2.2 简单查询 简单查询是指对单表的简单查询。 利用WHERE语句筛选出符合条件的记录; 利用AS语句显示出虚拟字段。 格式 SELECT 字段 FROM 表名 SELECT 字段 FROM 表名 WHERE 条件 SELECT 字段表达式 [AS] 虚假字段 FROM 表名 4.2.2 简单查询 1.显示部分或全部字段 【例】显示教师表中所有人的姓名和性别信息 SELECT FROM 虚拟字段 2.查询结果可以是通过某一字段或几个字段计算得到的虚拟字段。 去掉重复记录 3.去掉查询结果中的重复记录 【例】显示学生表中都有哪些专业。 4.2.3 联接查询(简单联接) 1.简单联接查询 【例】显示学生的学号、姓名和成绩的信息。 4.2.3 联接查询(简单联接) 【例】显示学生的学号、姓名、课程名和成绩的信息。 超联接查询 3.超联接查询 SELECT… FROM 表1INNER|LEFT|RIGHT|FULL JOIN 表2 ON 联接条件表达式 INNER JOIN或JOIN为内联接(等值联接) LEFT JOIN 为左联接 RIGHT JOIN 为右联接 FULL JOIN 为全联接 ON 指明联接条件 内联接 SELECT…FROM 表1[INNER] JOIN 表2ON 联接条件 INNER JOIN 或JOIN为内联接,也称为等值联接。 按照条件进行联接,不满足条件的记录不会出现在查询结果中。 内联接 左联接 LEFT JOIN 为左联接,除按照联接条件进行联接外,第一个表不满足条件的记录也会出现在查询结果中。 【例】左联接查询 SELECT 学生.学号,姓名,成绩; FROM 学生 LEFT JOIN 选课 ON 学生.学号=选课.学号 右联接 RIGHT JOIN 为右联接,除按照联接条件进行联接外,最后一个表不满足条件的记录也会出现在查询结果中。 【例】右联接查询 SELECT 学号, 课程名,成绩; FROM 选课 RIGHT JOIN 课程 ON 选课.课程号=课程.课程号 全联接 FULL JOIN 为全联接,除按照联接条件进行联接外,两个表中不满足条件的记录也会出现在查询结果中。 别名 在联接操作中,经常需要使用关系名用前缀,有时显得很麻烦。 【例】显示学生的学号、姓名、课程名和成绩的信息。 自联接查询 2.自联接查询 【例】查询所有课程的先行课信息。 4.2.4 嵌套查询 当查询的条件依赖于另一个查询的结果时,就要在查询条件WHERE短语中嵌套一个子查询。 量词查询 【例】查询大于等于 的所有科成绩的学号和课程号。 谓词查询 [NOT] IN和[NOT] EXISTS谓词运算 IN和NOT IN表示某个字段值是否在子查询中出现过。 【例】查询选修了“C001”或“C004”课程的学生的学号。 谓词查询 谓词查询 【例】查询至少选修一门课的学生信息。 [NOT]EXISTS与[NOT]IN的区别 两者的区别: [NOT]EXISTS:指定一个子查询,检测最终结果中是否存在子查询的结果。 子查询:根据两个表的关系进行查询,可以查询多个字段 如:NOT EXISTS (SELECT * FROM 选课 WHERE 学号=学生.学号) [NOT]EXISTS前没有字段名 [NOT]IN:确定给定的值是否与子查询或列表中的值相匹配。 子查询:只对表中的某个字段进行查询, 如: 学号 I

文档评论(0)

3377713 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档