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

Oracle高级查询

  •                 接:                     核心:通过外连接,把对于连接条件不成立的记录,仍然包含在最后的结果中,分为:

                            (1)左外连接:当连接条件不成立的时候,等号左边的表仍然被包含 , 主表在左侧,字段全显示,副表null补充对齐。+号在右侧(副表)

                            (2)右外连接:当连接条件不成立的时候,等号右边的表仍然被包含 , 主表在右侧,字段全显示,副表null补充对齐。+号在左侧(副表)

                        例如: 按部门统计员工人数,要求显示:部门号,部门名称,人数

                         select d.deptno 部门号,d.dname 部门名称,count(e.empno) 人数 from emp e,dept d where e.deptno(+)=d.deptno group by d.deptno,d.dname;

                    (右外连接在等号左边添加“(+)”,左外连接是在等号右边添加“(+)”)


    查看全部
    2 采集 收起 来源:[Oracle] 外连接

    2021-01-22

  •                 笛卡尔集:

    spacer.gif

                       为了避免笛卡尔集,可以在where加入有效的连接条件                     在实际运行环境下,应避免使用笛卡儿积全集                     连接条件个数>=n-1 (n为参加笛卡尔集运算的表的总个数)


    查看全部
  •             1.ttitle col 15 '我的报表' col 35 sql.pno

                    (使用ttitle命令设置报表的名称,col 15 表示空15个列,'我的报表'表示显示‘我的报表’,col 35 表示空35个列,sql.pno表示报表的页码)

                 2.col deptno heading 部门号

                    (使用col命令可以设置列的别名,将deptno heading '标题' 设置为别名'部门号')

                3.break on deptno skip 1

                    (相同的部门号只显示一次,不同的部门号之间隔1行)

    get:读取指定路径下的sql语句        @:执行指定路径下的sql语句        /:执行上一次SQL语句


    查看全部
  •                 分组函数的嵌套

                        示例:求部门平均工资的最大值

                            1、通过AVG函数求出每个部门的平均工资

                                select avg(sal) from emp group by deptno;

                            2、嵌套MAX函数求出部门平均工资的最大值

                                    select max(avg(sal)) from emp group by deptno;


    查看全部
  •             在分组查询中使用order by子句

                示例:求每个部门的平均工资,要求显示:部门号,部门的平均工资,并按照工资升序排列

                可以按照:列、别名、表达式、序号进行排序

                    select deptno,avg(sal) from emp group by deptno order by avg(sal);

                    select deptno,avg(sal) 平均工资 from emp group by deptno order by 平均工资;

                    select deptno,avg(sal) 平均工资 from emp group by deptno order by 2;(平均工资在SELECT 语句中的第二列);

    spacer.gif

                    sqlplus的另一个小技能:   a命令:-append;a命令表示在上一条命令后面追加语句,a命令后必须跟两个或两个以上的空格,若只打一个空格则追加语句紧跟上一条语句最后一个单词拼接


    查看全部
  • qqq
    查看全部
    0 采集 收起 来源:练习

    2021-01-07

举报

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

微信扫码,参与3人拼团

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

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