Step it up now

순위 매기기 (rank, rownum) 본문

수업/SQL

순위 매기기 (rank, rownum)

케잉 2023. 11. 24. 17:27

work time table


 

 

 

이들 데이터의 작업시간이 짧게 걸리는 시간 순서대로 1부터 15까지의 순위를 
매겨서 출력하시오.

SELECT * FROM t_worktime

 

 


 

▶ rownum

조회 순서를 매길때

조회 개수를 제한하는 경우 사용

 

----------rank 사용 

SELECT
            workcd_vc, time_nu
           ,rank() over(order by time_nu) rnk
  FROM t_worktime;
  
SELECT rownum rno, workcd_vc, time_nu FROM t_worktime
WHERE rownum < 4;




----------- rank 사용 안함

SELECT
             *
   FROM (
                SELECT rownum rno, workcd_vc, time_nu FROM t_worktime
                WHERE rownum < 4   
             )a,
             (
             SELECT rownum rno, workcd_vc, time_nu FROM t_worktime
                WHERE rownum < 4
             )b;
             
             
SELECT
             a.workcd_vc, a.TIME_NU,  count(b.workcd_vc)
   FROM (
                SELECT rownum rno, workcd_vc, time_nu FROM t_worktime
                WHERE rownum < 4   
             )a,
             (
             SELECT rownum rno, workcd_vc, time_nu FROM t_worktime
                WHERE rownum < 4
             )b
 WHERE a.time_nu >= b.time_nu
 GROUP BY a.workcd_vc, a.time_nu;

 

 

 

'수업 > SQL' 카테고리의 다른 글

procedure 출력 확인  (0) 2023.11.27
3명씩 줄 세우기  (0) 2023.11.26
ER-WIN/ DML  (0) 2023.11.26
DECODE(A, B, X, Y), 정렬(오름차순 내림차순)/ 강의 시간 예제  (0) 2023.11.21
let it be 예제  (0) 2023.11.21