【Java EE 学习 28 下】【Oracle面试题2道】【Oracle练习题3道】.doc

【Java EE 学习 28 下】【Oracle面试题2道】【Oracle练习题3道】.doc

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
  一、已知程序和数据   要求根据下图写出相应的sql语句。   分析:该题使用自连接和左外连接可以解决   或者   二.已知程序和数据   要求根据下图得到相应的sql查询:   答案:   分析:   (1)wm_contat:列合并函数,能将查询到的结果合并到一起,并默认使用,隔开。   (2)instr函数:字符串查找函数,instr(c.stu_ids,s.stu)的意思就是在c.stu_ids中寻找字符串s.stu,如果找到了就返回大于零的一个数,代表该字串所在的位置,如果没有找到,则返回0。   练习题1:找到员工表中工资最高的前三名,如下格式:   分析:这道题使用子查询就能解决,实际上是Oracle分页的知识点。一个重要的伪列:rownum,该伪列代表了行号。   使用rownum行号的重要注意事项:   (1)行号永远按照默认的顺序生成,什么叫做默认的顺序?也就是说如果使用order by进行了排序,不会改变原来的行号。   (2)rownum只能使用rownum或者rownu=的形式,不能使用rownum或者rownum=的形式,原因是rownum只能从1开始依次递增。   答案:   这个问题是的核心思想和Oracle分页的核心思想并没有什么不同,那么Oracle中没有limit语法,该怎么分页呢?关键还是在于rownum的使用上。   虽然不能直接对rownum进行=的操作,但是可以在主查询中对子查询的rownum进行该操作。   查找员工表中工资为5-8名的员工信息:   注意子查询中rownum起别名是为了防止和主查询中使用的rownum起冲突。   练习题2:找到员工表中薪水大于本部门平均薪水的员工。   效果图如下:   答案:使用子查询解决该问题   练习题3:统计每年入职的员工个数。   效果图如下:   使用   可以得到实际上只有四个入职年份,所以只需要针对这四个入职年份进行选择就可以了,这里使用decode函数进行选择。   答案:   该道题关键就在于函数的使用:decode、sum、to_char。

文档评论(0)

PDF文档格式转化 图片识别 票证识别服务 欢迎咨询

1亿VIP精品文档

相关文档