Oracle实用教程(第5版)课件 第4章 数据库的查询和视图.pptx

Oracle实用教程(第5版)课件 第4章 数据库的查询和视图.pptx

  1. 1、本文档共113页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 数据库的查询和视图选择、投影和连接选 择01选 择选择(Selection),简单地说就是通过一定的条件把自己所需要的数据检索出来。选择是单目运算,其运算对象是一个表。该运算按给定的条件,从表中选出满足条件的行形成一个新表,作为运算结果。【例4.1】 学生表如表4.1所示。学 号姓 名性 别平均成绩154215王 敏小琳小平男88若要在学生表中找出性别为女且平均成绩在80分以上的行形成一个新表,则该选择运算的结果如表4.2所示。学 号姓 名性 别平均成绩154211李小琳女82投 影02投 影投影(Projection)也是单目运算。投影就是选择表中指定的列,这样在查询结果中只显示指定数据列,减少了显示的数据量,也可提高查询的性能。【例4.2】 若在表4.1中对“姓名”和“平均成绩”投影,该查询得到如表4.3所示的新表。姓 名平均成绩王 敏74李小琳82胡小平88连 接03连 接连接(JOIN)是把两个表中的行按照给定的条件进行拼接而形成新表。【例4.3】 若A表和B表分别如表4.4和表4.5所示,连接条件为T1=T3,则连接后的表如表4.6所示。表4.4 A表T1T21A6F2B表4.5 B表表4.6 连接后的表T3T4T513M20NT1T2T3T4T51A13M2B20N连 接数据库应用中最常用的是“自然连接”。进行自然连接运算要求两个表有共同属性(列),自然连接运算的结果表是在参与操作两个表的共同属性上进行等值连接后,再去除重复的属性后所得的新表。【例4.4】 若A表和B表分别如表4.7和表4.8所示,自然连接后的新表C如表4.9所示。表4.8 B表表4.7 A表T1T2T310A1B15A1C220D2C2T1T4T5T61100A1D11002B2C1200A2D1510A2C2表4.9 C表T1T2T3T4T5T65A1C210A2C220D2C20A2D1第4章 数据库的查询和视图数据库的查询数据库的查询使用数据库和表的主要目的是存储数据,以便在需要时进行检索、统计或组织输出,通过SQL查询可以从表或视图中迅速、方便地检索数据。SQL的SELECT语句可以实现对表的选择、投影及连接操作,其功能十分强大。SELECT语句比较复杂,其主要的子句语法格式如下:SELECT 列 /*指定要选择的列及其限定*/ FROM 表或视图 /*FROM子句,指定表或视图*/ [ WHERE 条件表达式 ] /*WHERE子句,指定查询条件*/ [ GROUP BY 分组表达式 ] /*GROUP BY子句,指定分组表达式*/ [ HAVING 分组条件表达式 ] /*HAVING子句,指定分组统计条件*/ [ ORDER BY 排序表达式 [ ASC | DESC ]] /*ORDER子句,指定排序表达式和顺序*/下面讨论SELECT的基本语法和主要功能。选择列011.选择一个表中指定的列2.修改查询结果中的列标题3.计算列值4.消除结果集中的重复行选择列选择表中的列组成结果表,语法格式为:SELECT [ ALL | DISTINCT ] 列名列表其中,列名列表指出了结果的形式,其主要格式为:{ * /*选择当前表或视图的所有列*/ | { 表名 | 视图 } . * /*选择指定的表或视图的所有列*/ | { 列名 | 表达式 } [ [ AS ] 列别名 ] /*选择指定的列*/ | 列标题 = 列名表达式 /*选择指定列并更改列标题*/} [ , … n ]选择列1.选择一个表中指定的列使用SELECT语句选择一个表中的某些列,各列名之间要以逗号分隔,语法格式为:SELECT 列名1 [ , 列名2 [,…n] ] FROM 表名 [WHERE 条件表达式]其功能是在FROM子句指定的表中检索符合条件的列。【例4.5】 查询XSCJ数据库的XSB表中各个同学的学号、姓名和总学分。在SQL Developer中myorcl连接的命令编辑区输入如下语句:SELECT 学号, 姓名, 总学分 FROM XSB;选择列将光标定位到语句第一行,单击“执行”按钮 ,结果如图4.1所示。执行完后“结果”选项页中将列出所有结果数据。选择列【例4.6】 查询XSB表中总学分大于50的同学的学号、姓名和总学分。SELECT 学号, 姓名, 总学分 FROM XSB WHERE 总学分50;执行结果如图4.2所示。选择列当在SELECT语句指定列的位置上使用*号

文档评论(0)

lai + 关注
实名认证
内容提供者

精品资料

版权声明书
用户编号:7040145050000060

1亿VIP精品文档

相关文档