[오라클 SQL] ORDER BY NULL값 정렬하기, NULLS FIRST, NULLS LAST


 

안녕하세요.

 

오늘은 ORDER BY 함수를 이용하여 NULL값 정렬하는 방법에 대해서 알려드리고자 합니다.

 

오라클에서는 NULL값을 포함한 데이터를 ORDER BY 함수를 이용하여 정렬을 하면, NULL값이 제일 마지막에 조회가 됩니다.

 

하지만, 데이터를 조회 하다보면 NULL값 데이터를 제일 먼저 나오게 하는 경우도 종종 생기는데요.

 

이때 유용하게 사용하는 문법이 있습니다.

 

바로 NULLS FIRST, NULLS LAST 구문을 추가해줘서 NULL값의 조회 위치를 정할 수 있습니다.

 

그럼 예제를 통해서 알아보도록 할게요.



 

NULL 값이 포함된 데이터 조회


1

2

3

4

5

6

7

8

9

10

11

12

13

WITH Test AS

(

    SELECT 1 AS COL1 FROM DUAL

    UNION ALL

    SELECT 2 AS COL1 FROM DUAL

    UNION ALL

    SELECT 3 AS COL1 FROM DUAL

    UNION ALL

    SELECT NULL AS COL1 FROM DUAL

)

SELECT *

FROM Test

ORDER BY COL1

cs


조회 결과



 

NULLS FIRST 사용


1

2

3

4

5

6

7

8

9

10

11

12

13

WITH Test AS

(

    SELECT 1 AS COL1 FROM DUAL

    UNION ALL

    SELECT 2 AS COL1 FROM DUAL

    UNION ALL

    SELECT 3 AS COL1 FROM DUAL

    UNION ALL

    SELECT NULL AS COL1 FROM DUAL

)

SELECT *

FROM Test

ORDER BY COL1 NULLS FIRST

cs

 

조회 결과



 

NULLS FIRST를 이용하여 NULL 데이터를 제일 먼저 조회되게 끔 정렬을 할 수 있습니다.

 

그럼 NULLS LAST를 이용하여 다시 NULL데이터를 제일 마지막에 조회 되게 끔 해볼게요.

 

NULLS LAST 사용


1

2

3

4

5

6

7

8

9

10

11

12

13

WITH Test AS

(

    SELECT 1 AS COL1 FROM DUAL

    UNION ALL

    SELECT 2 AS COL1 FROM DUAL

    UNION ALL

    SELECT 3 AS COL1 FROM DUAL

    UNION ALL

    SELECT NULL AS COL1 FROM DUAL

)

SELECT *

FROM Test

ORDER BY COL1 NULLS LAST

cs


조회 결과



 

알아 두시면 유용하게 사용하실 문법이니까 예제코드 한번씩 따라하시면서 문법 숙지하숙지 좋을 것 같아요!^^

 

글 읽어 주셔서 감사합니다.



728x90

이 글을 공유하기

댓글

Designed by JB FACTORY