// NULL 함수
- 반환 값이 NULL일 경우 대체 값을 제공하는 함수: NVL(NULL, 대체값)
SELECT NVL(AGE, 0) FROM MEMBER;
- 회원들의 이메일 조회(이메일이 (null)인 경우 '없음'으로 대체)
SELECT NVL(EMAIL, '없음') FROM MEMBER;
- NVL에서 조건을 하나 더 확장: NVL2(입력값, NOTNULL대체값, NULL대체값)
SELECT NVL2(AGE, 100/AGE, 0) FROM MEMBER;
- 회원들의 이메일 입력 여부 조회(이메일이 (null)인 경우 '없음'으로 대체, NULL 이 아닐 경우 '있음'으로 대체)
SELECT NVL2(EMAIL,'있음', '없음') FROM MEMBER;
- 두 값이 같은 경우 NULL, 그렇지 않은 경우 첫 번째 값 반환: NULLIF(값1, 값2)
SELECT NULLIF(AGE,19) FROM MEMBER;
- 나이가 26살인 경우 NULL 값으로 반환하여 회원 정보 조회
SELECT NAME, NULLIF(AGE, 26) FROM MEMBER;
// DECODE 함수
- 상황에 따라 다른 결과를 보여준다.
- 조건에 따른 값 선택: DECOD(기준값, 비교값, 출력값. 비교값, 출력값)
SELECT DECODE(GENDER, '남성', 1, 2) FROM MEMBER;
- 휴대폰 앞자리가 011이면 'SK', 016이면 'KT', 나머지는 '자유'로 조회
SELECT DECODE(SUBSTR(PHONE,1,3)
, '011','SK'
, '016', 'KT'
, '자유') FROM MEMBER;
'데이터베이스(DB) > Oracle' 카테고리의 다른 글
[Oracle] 순위 함수 (0) | 2023.02.20 |
---|---|
[Oracle] 집계 함수, Group by절, Having절 (0) | 2023.02.20 |
[Oracle] 변환 함수 (0) | 2023.02.19 |
[Oracle] 날짜 시간 함수 (0) | 2023.02.18 |
[Oracle] 숫자 함수 (0) | 2023.02.17 |