为了账号安全,请及时绑定邮箱和手机立即绑定

Oracle高级查询

  • 在SELECT列表中所有未包含在组函数中的列都应该包含在GROUP BY子句中,但是包含在GROUP BY子句中的列不必包含在SELECT列表中! select a,b,c,组函数(x) from table group by a,b,c;
    查看全部
  • 一定要注意分组函数在计算时会避开空值只计算非空的值,可以使用NVL函数使分组函数无法忽略空值!
    查看全部
    0 采集 收起 来源:使用分组函数3

    2015-08-11

  • 算平均工资的时候,三种方法的结果都一样;但是算平均奖金的时候会出现不一样的结果,原因在于奖金存在空值。 在分组函数中使用NVL函数可以使分组函数无法忽略空值 count(NVL(COMM,0))当第一个参数comm为空时返回0,当comm不为空时返回原值,0与空值不一样,空值在统计数目时不被计算在内,但是0会被计算在内!
    查看全部
    0 采集 收起 来源:使用分组函数3

    2015-08-11

  • 设置显示格式,在文本文档里面修改命令并保存,编辑器命令就会发生相应的变化,接下来是修改行款列宽: SQL> set linesize 200 SQL> col 部门中员工的姓名 for a60
    查看全部
    0 采集 收起 来源:使用分组函数2

    2018-03-22

  • 求部门数目:取消重复的记录 select count(distinct deptno) from emp;
    查看全部
    0 采集 收起 来源:使用分组函数1

    2015-08-11

  • wm_concat表示行转列,属于分组函数,注意与前面的concat函数区别开,concat表示对字符串的拼接
    查看全部
  • 1.自连接存在的问题:不适合操作大表 解决办法:层次查询 层次查询某些情况下,可以替代自连接 本质上,是一个单表查询 比如: from emp connect by prior empno=mgr start with empno=7839 翻译过来就是connect by上一层的员工号=老板号 start with empno=根的号
    查看全部
  • select e.ename 员工姓名,b.ename 老板姓名 from emp e,emp b where e.mgr=b.empno;
    查看全部
    0 采集 收起 来源:[Oracle] 自连接

    2015-08-10

  • 莫名的喜感
    查看全部
  • 多表查询; 两个方法的结果一样,如何比较优劣 通过比较select语句的执行计划:explain plan for,一般放在开头,执行结束之后如何查看explain生成的执行计划:select * from table(dbms_xplan.display);可以打印查看执行计划,一般放在末尾 然后看耗费了多少CPU的执行资源,结果发现使用相关子查询比多表查询耗费的CPU资源要少
    查看全部
    0 采集 收起 来源:案例2

    2015-08-06

  • MYSQL通过关键字实现分页查询,而Oracle要通过嵌套子查询的方式来实现分页查询,另外要注意rownum始终是从1开始的!
    查看全部
    0 采集 收起 来源:案例1

    2015-08-06

  • 右外连接是在等号的左边写一个(+),而左外连接是在等号的右边写一个(+)
    查看全部
    0 采集 收起 来源:[Oracle] 外连接

    2015-08-06

  • 外连接和等值连接存在区别,等值连接当连接条件不成立时,数据就不包含在最后的结果中,然而外连接如图:
    查看全部
    0 采集 收起 来源:[Oracle] 外连接

    2015-08-06

  • 出现在select后面的字段,且没有在分组函数中的,必须要在group by子句中声明; where子句中不能使用组函数; having用于过滤分组后的数据,与where类似; 如果过滤条件中没有分组函数时,where与having通用,那么从sql优化的角度来讲,where的效率更高,因为having是先分组再过滤,而where是先过滤再分组。
    查看全部
  • 分组函数作用于一组数据,并对一组数据返回一个值。 常用分组函数:AVG、SUM、MIN、MAX、COUNT、WM_CONCAT(行转列)
    查看全部

举报

0/150
提交
取消
课程须知
小伙伴们,学习本课程前需要掌握Oracle的语法基础,并且对Oracle的函数有所了解。如不了解这两部分内容,请移步《Oracle数据库开发必备利器之SQL基础》和《Oracle数据库开发利器之函数》两门教程。
老师告诉你能学到什么?
1、掌握分组查询 2、掌握多表查询 3、掌握子查询

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!