오라클

오라클 NULL, NVL, NULLIF, COALESCE

chantleman 2024. 7. 12. 14:29

 

 

IS NULL,
IS NOT NULL
NULL값인지 아닌지 비교
NVL(c,r) c가 NULL이 아니면 c값으로, NULL이면 r 반환
r에 보통 0을 넣음(결과가 0이 되게)
NVL2(c,r1,r2) c가 NULL이 아니면 r1값으로, NULL이면 r2 반환
NULLIF(c,d) c와 d를 비교하여 같으면 NULL을, 다르면 c값 반환
COALESCE(p [,p...]) 파라미터중 NULL이 아닌 첫번째 파리미터 반환

 

 

NVL

select buyer_name 거래처, NVL(buyer_charger,'없다') 담당자 from buyer;

 

 

 

select null+10 덧셈, 10*null 곱셈 from dual;

 

null에 10을 더하거나 곱해도 결과는 null로 나옵니다.

 

 

select NVL(null,0)+10 덧셈, 10*NVL(null,0) 곱셈 from dual;

NVL을 사용해서 null을 0으로 바꿔준 후 10을 더하거나 곱하면 결과가 나옵니다.

 

 

 

NVL, NVL2

select mem_name, nvl(mem_mileage,0), 
nvl2(mem_mileage, '정상회원','비정상회원') from member;

 

 

 

NULLIF

select nullif(123,123) result1,
        nullif(123,1234) result3,
        nullif('A','B') result4 from dual;

 

 

 

COALESCE

select coalesce(null,null,'hello',null,'world') from dual;

'오라클' 카테고리의 다른 글

오라클 REGEXP 함수  (0) 2024.07.12
오라클 조건문  (0) 2024.07.12
LAST_DAY(), TO_DATE  (0) 2024.07.10
오라클 시간 설정  (0) 2024.07.10
width_bucket()  (0) 2024.07.10