
📌
LAG: 바로 전 행 출력
LEAD: 바로 다음 행 출력
lag(출력할변수명,1) over (order by 정렬할변수명) as 별칭
lead(출력할변수명,1) over (order by 정렬할변수명) as 별칭
select empno, ename, sal, lag(sal,1) over (order by sal asc) as 이전행,
lead(sal,1) over (order by sal asc) as 다음행
from emp
where job in ('ANALYST','MANAGER');
ㄴ (asc 안써도 됨)
select empno, ename, lag(ename,1) over (order by empno) as 이전행,
lead(ename,1) over (order by empno) as 다음행
from emp;
select ename, hiredate, lag(hiredate,1) over (order by hiredate) "이전 입사일"
from emp;

select ename, hiredate,
hiredate - lag(hiredate,1) over (order by hiredate) 간격
from emp;
select deptno, count(*)
from emp
group by deptno;
select deptno, ename, sal, rank() over (partition by deptno
order by sal desc) 순위
from emp;
select job, sum(sal)
from emp
group by job
having sum(sal) >= 4000;