第3章数据库基础知识.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文档。上传文档
查看更多
第3章数据库基础知识ppt课件

SQL的数据操作功能包括select(查询)、insert(插入)、delete(删除)和update(修改)四条语句。SQL语言对数据库的操作十分灵活方便,原因在于select语句中的成分有丰富多样的元组,有许多可选形式,尤其是目标列和条件表达式。 数据库查询是数据库的核心操作,SQL语言提供了SELECT语句进行数据库的查询。 一个典型的SQL查询具有如下形式: Select a1,a2,…an From r1,r2,…rn Where p 对应关系代数表达式为: ∏ a1,a2,…an σ ( ( r1×r2×…×rn ) ) p SQL查询中的子句顺序为select、from、where、group by、having和order by。 ▲其中select和from是必须的,having子句只能与 group by 搭配起来使用。 1、select子句对应的是关系代数中的投影运算,用来列出查询结果中的属性。其输入可以是列名、表达式、集合函数(avg、count、max、min、sum)。Distinct 选项可以保证查询的结果集中不存在重复元组。 2、From 子句对应的是关系代数中的笛卡儿积,它列出的是表达式求值过程中需扫描的关系,即在from子句中出现多个基本表或视图时,系统首先执行笛卡儿积操作。 3、Where子句对应的是关系代数中的选择谓词。Where子句的条件表达式中可以使用的运算符如下: 运算符 含义 运算符 含义 集合成员运算符 In 在集合中 不在集合中 算 术 运 算 符 大于 Not in ≥ 大于等于 字符串 匹配 运算符 like 与_和% 进行单个 和多个 字符匹配 < 小于 ≤ 小于等于 = 等于 ≠ 不等于 逻辑运算符 And 与 空值比较 运算符 Is null Or 或 Is not null not 非 (1)等值连接与非等值连接 连接条件的一般格式为: [表名1 . ] <列名<比较运算符>[<表名2 .] <列名2 其中,比较运算符主要有:=、>、<、≤、≥、!=。 当比较运算符为“=”时,称为等值连接,其他情况为非等值连接。 在连接条件中引用列名时要加上表名前缀,是因为两个表中的列名相同,必须用表名前缀来确切说明所指列属于哪个表,以避免二义性。如果列名是惟一的,就不必加前缀。 (2)多表连接 涉及3 个及3 个以上的表进行连接,称为多表连接。 (3)自身连接 当一个表与其自已进行连接操作时,称为表的自身连接。 学生关系模式为S ( Sno , Sname , SD , Sage , Ssex ) ,其中:Sno 表示学生学号,sname 表示学生姓名,SD 表示学生所在系,Sage 表示学生年龄,ssex 表示学生性别。如果要查询姓名至少包含6 个字母,倒数第3 个字母为“L ”的学生的学号、姓名和年龄的SELECT 语句如下, SELECT Sno , Sname , Sage FROM S WHERE ( l ) LIKE ( 2 ) (1) A . “_ _ _L _%” B .”_ _ _%L_ _” C . Sname D .姓名 (2) A . “_ _ _L _%” B .”_ _ _%L_ _” C . Sname D .姓名 答案:C、B 学生关系模式为s ( sno , sname , SD , Sage , ssex , cno , orade ) ,其中:sno 表示学生学号,sname 表示学生姓名,sD 表示学生所在系,Sage 表示学生年龄,Ssex 表示学生性别,Cno 表示学生选课的课程号,orade 表示成绩。查询至少选修了3 门课程的学生学号、姓名及平均成绩的SELECT 语句如下。 SELEcT sno , sname ,avg ( orade ) FROM S GROUP BY ( 1 ) HAVING ( 2 ) ( l ) A . Sno B . Sname C . Sage D . Cno ( 2 ) A . COUNT ( DISTINCT Sno ) 2 B . COUNT ( Cno ) 2 C . COUNT ( DISTINCT Sno ) = 2 D . COUNT ( Cno ) =2 答案:A、B 分组查询 SELECT 语句中的GROUP BY 子句可以将查询结果按属性列或属性列组合在行的方向上进行分组,每组在属性列或属性列组合上具有相同的值。 GROUP BY 子句按Sno 的值分组,所有具有相同Sno的元组为一组,对每一组使用函数COUNT 进行计算,统计出每位学生选课的门数。 HAVING 子句去掉不满足COUNT ( * ) =

文档评论(0)

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

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

1亿VIP精品文档

相关文档