데이터베이스/SQL

[SQL] DBMS 종류에 따른 rownum

Reference M1 2019. 9. 23. 23:01

 

TEMP 테이블

DMBS 종류에 따른 rownum 방식은 조금씩 다르다. 가장 자주 사용하는 DBMS는 머리속에 있겠지만 어쩌다 사용하거나 처음 사용하는 DBMS는 찾아보기 마련이다. 정리하는 차원에서 포스팅을 한다.

Oracle

SELECT ROW_NUMBER() OVER(ORDER BY EMP_ID ASC) AS RNUM
     , EMP_ID
     , EMP_NAME
  FROM TEMP;
 
SELECT ROWNUM AS RNUM
     , EMP_ID
     , EMP_NAME
  FROM TEMP
 ORDER BY EMP_ID ASC;

 

MySQL

SELECT @RNUM := @RNUM + 1 AS RNUM
     , A.EMP_ID
     , A.EMP_NAME
  FROM (SELECT EMP_ID
             , EMP_NAME
          FROM TEMP
         ORDER BY EMP_ID ASC) A
     , (SELECT @RNUM := 0) B

 

PostgreSQL

SELECT ROW_NUMBER() OVER(ORDER BY EMP_ID ASC) AS RNUM
     , EMP_ID
     , EMP_NAME
  FROM TEMP;