본문 바로가기
SQL

SQL_ DECODE, COALESCE, NULLIF, NVL, NVL2

by haheaven 2023. 10. 13.

DECODE(oracle)

ex)SELECT DECODE(COL, CMP1, VAL1, CMP2, VAL2, VAL3 ) FROM TABLE;

- if-else구조

- COL이 CMP1이면, VAL1, CMP2이면 VAL2, 그것도 아니라면, VAL3 리턴

 

 

COALESCE(postgreSQL, oracle)

ex) SELECT COALESCE(COL, VAL1, VAL2) FROM TABLE;

- COL이 null이면 VAL1, VAL1도 null이라면 VAL2 리턴

 

 

NULLIF(postgreSQL, oracle)

ex) SELECT NULLIF(EXPR1, EXPR2) FROM TABLE;

- EXPR1과 EXPR2이 같으면  NULL, 같지 않으면 EXPR1 리턴

 

 

NVL(oracle)

ex) SELECT NVL(COL, VAL) FROM TABLE;

- COL이 null이면 VAL 리턴, 아니면 COL 리턴

 

 

NVL2(oracle)

ex) SELECT NVL2(COL,VAL1,VAL2) FROM TABLE;

- COL이 null이 아니면 VAL1 리턴, null이면 VAL2 리턴

'SQL' 카테고리의 다른 글

ORACLE_여러 행을 한 행으로 조회하기  (0) 2022.08.05
ORACLE_LOCK 개체 확인 및 KILL(해제)  (0) 2022.08.05
SQL_ CASE(조건) 와 NULL(변경)  (0) 2021.08.22
SQL_데이터타입 / DATE  (0) 2021.08.21
SQL_기초2  (0) 2021.08.20

댓글