博客
关于我
ORACEL学习--理解over()函数
阅读量:793 次
发布时间:2023-02-24

本文共 2397 字,大约阅读时间需要 7 分钟。

SQL???OVER???????

?SQL???????ORDER BY??OVER???????????????????????????????OVER?????????????????????????????????????????????????OVER?????????????

1.1 ?????ORDER BY?????

?SQL??ORDER BY?????????????????????????????????????????

SELECT column1, column2FROM tableORDER BY column1 ASC, column2 DESC;

ORDER BY???????????????????????????ASC?DESC???????

a) ???????
SELECT ename, salFROM empWHERE deptno = 10ORDER BY sal ASC;
b) ???????
SELECT ename, sal, deptnoFROM empWHERE deptno = 10ORDER BY deptno ASC, sal DESC;

?????????????????????????????????????????????????


1.2 ????????????

??????????????????PARTITION BY????????????????????????????PARTITION BY????????????????????????

?????????
SELECT column1, column2FROM tablePARTITION BY columnA, columnBORDER BY columnC ASC;
?????????

??????????????????????????????????????????????????????????

SELECT deptno, last_value(sal) over(partition by deptno order by sal) as max_salFROM empGROUP BY deptno;

??????GROUP BY?OVER??????????????????????


1.3 OVER?????????

OVER?????SELECT????????????????????????????????????????????????

OVER???????
SELECT column1, column2FROM tableWHERE conditionOVER (    partition by columnA, columnB    order by columnC ASC);
OVER?????????
  • ?????
  • SELECT deptno, empno, ename, sal, last_value(sal) over(partition by deptno) as max_salFROM empWHERE deptno = 30;
    1. ?????
    2. SELECT deptno, empno, ename, sal, min(sal) over(partition by deptno) as min_salFROM empWHERE deptno = 30;
      1. ???????
      2. SELECT deptno, empno, ename, sal, last_value(sal) over(partition by deptno order by sal desc) as max_salFROM empWHERE deptno = 30ORDER BY mgr desc;

        2. OVER???????

        ???????OVER???????????????????????

      3. ??????

        OVER?????????????????????????????????

      4. ???????

        ???OVER???????????????????????????

      5. ??????????

        OVER?????GROUP BY?????????????????????


      6. 3. OVER???????

        ???OVER???????????????

      7. ???????

        OVER????????ORDER BY??????????????????????????

      8. ??????

        OVER?????????????????????????????

      9. ????

        ?????OVER????????????????????


      10. 4. OVER???????

        ??1?????????

        SELECT deptno, last_value(sal) over(partition by deptno order by sal) as max_salFROM empGROUP BY deptno;

        ??2????????????

        SELECT deptno, empno, ename, sal, last_value(sal) over(partition by deptno order by sal desc, empno asc) as max_salFROM empWHERE deptno = 30;

        ??3???????

        SELECT deptno, min(sal) over(partition by deptno) as min_salFROM empGROUP BY deptno;

        ???????????OVER??????????????????????????????????????SQL?????????

    转载地址:http://fspfk.baihongyu.com/

    你可能感兴趣的文章
    【Docker知识】将环境变量传递到容器
    查看>>
    uniapp超全user-agent判断 包括微信开发工具 hbuilder mac windows 安卓ios端及本地识别
    查看>>
    Oracle DBA课程系列笔记(20)
    查看>>
    oracle dblink 创建使用 垮库转移数据
    查看>>
    oracle dblink结合同义词的用法 PLS-00352:无法访问另一数据库
    查看>>
    Oracle dbms_job.submit参数错误导致问题(ora-12011 无法执行1作业)
    查看>>
    oracle dg switchover,DG Switchover fails
    查看>>
    Oracle E-Business Suite软件 任意文件上传漏洞(CVE-2022-21587)
    查看>>
    Oracle EBS OPM 发放生产批
    查看>>
    Oracle EBS-SQL (BOM-15):检查多层BOM(含common BOM).sql
    查看>>
    Oracle EBS环境下查找数据源(OAF篇)
    查看>>
    oracle Extract 函数
    查看>>
    uni-app开发环境自动部署的一个误区(App running at...)
    查看>>
    Oracle GoldenGate Director安装和配置(无图)
    查看>>
    Oracle Goldengate在HP平台裸设备文件系统OGG-01028处理
    查看>>
    oracle instr函数详解
    查看>>
    Oracle Java所有版本的下载链接
    查看>>