本文共 2397 字,大约阅读时间需要 7 分钟。
?SQL???????ORDER BY??OVER???????????????????????????????OVER?????????????????????????????????????????????????OVER?????????????
?SQL??ORDER BY?????????????????????????????????????????
SELECT column1, column2FROM tableORDER BY column1 ASC, column2 DESC;
ORDER BY???????????????????????????ASC?DESC???????
SELECT ename, salFROM empWHERE deptno = 10ORDER BY sal ASC;
SELECT ename, sal, deptnoFROM empWHERE deptno = 10ORDER BY deptno ASC, sal DESC;
?????????????????????????????????????????????????
??????????????????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??????????????????????
OVER?????SELECT????????????????????????????????????????????????
SELECT column1, column2FROM tableWHERE conditionOVER ( partition by columnA, columnB order by columnC ASC);
SELECT deptno, empno, ename, sal, last_value(sal) over(partition by deptno) as max_salFROM empWHERE deptno = 30;
SELECT deptno, empno, ename, sal, min(sal) over(partition by deptno) as min_salFROM empWHERE deptno = 30;
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;
???????OVER???????????????????????
??????
OVER?????????????????????????????????
???????
???OVER???????????????????????????
??????????
OVER?????GROUP BY?????????????????????
???OVER???????????????
???????
OVER????????ORDER BY??????????????????????????
??????
OVER?????????????????????????????
????
?????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/