10. NVL, COALESCE, 컬럼연결(결합)

NVL()

SELECT NULL "COL1", NVL(NULL, 10) "COL2", NVL(5, 10) "COL3"
  FROM DUAL;
--==>> (null)    10    5
  • 첫 번째 파라미터 값이 null이 아니면 그 값 그대로 반환
  • null이면 두 번째 파라미터 값을 반환하고

 

NVL2()

SELECT ENAME "사원명", NVL2(COMM, '수당 有', '수당 無') "수당확인"
  FROM TBL_EMP;
  • 첫 번째 파라미터 값이NULL이면 세 번째 파라미터 값 반환
  • NULL이 아니면 두 번째 파라미터 값을 반환하고

 

COALESCE()

  • 매개변수 제한이 없는 형태로 인지하고 활용하기
  • 맨 앞에 있는 매개변수부터 차례로 NULL인지 아닌지 확인하여 NULL인 경우 그다음 매개변수의 값을 반환한다.
  • NULL이 아닌 경우 반환하고,
SELECT NULL "COL1"
	   , COALESCE(NULL, NULL, NULL, 30) "COL2"
	   , COALESCE(10, NULL, NULL) "COL3"
  FROM DUAL;
--==>> (null)    30    10

 

컬럼과 컬럼의 연결(결합)

SELECT 1+2
  FROM DUAL;
--==>> 3

SELECT 'A' || 'B'
  FROM DUAL;
--==>> AB

SELECT ENAME || JOB
  FROM TBL_EMP;

 

참고)

DATE SESSION변경

ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS';

ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD'

 

 

 


https://www.instagram.com/p/CajSLqHJPpe/?utm_source=ig_web_copy_link

부족하거나 잘못된 내용이 있을 경우 댓글 달아주시면 감사하겠습니다.

이 글에 부족한 부분이 존재할 경우 추후에 수정될 수 있습니다.


 

'SQL > Oracle' 카테고리의 다른 글

12. 날짜 변환 함수, BETWEEN A AND B  (0) 2022.03.07
11. UPPER(), LOWER(), INITCAP()  (0) 2022.03.07
9. 컬럼 구조의 추가 및 제거  (0) 2022.03.05
8. 테이블 복사, 커멘트  (0) 2022.03.04
7. 오라클 주요 자료형  (0) 2022.03.03