8.선택함수
/* - 여러가지 경우에 선택을 할 수 있는 기능을 제공하는 함수 1) DECODE(컬럼, 조건1, 결과1, 조건2, 결과2, ..., false 결과값) */ -- 컬럼의 값이 조건과 일치하는지 판단 SELECT DECODE(SUBSTR('1111294056520',7,1), '1', '남자', '2', '여자', '3', '남자', '4', '여자', '잘못입력함') FROM DUAL; -- 주민등록번호를 가지고 나이를 추출 -- 1900년생과 2000년생 SELECT TO_CHAR(SYSDATE,'YYYY')-(DECODE(SUBSTR('1111294056520',7,1), '1', '19', '2', '19', '3', '20', '4', '20', '잘못입력함')||SUBSTR('11112940..
2023. 4. 30.
7.NULL처리 함수
/* 1) NVL(컬럼, 컬럼값이 NULL이면 반환할 값) - 컬럼과 반환 값의 타입이 일치해야 함 -> 일치하지 않으면 수치 부적합 오류 ** ORDER BY 절에 별칭 사용 가능 */ -- NULL은 연산되지 않으므로 0으로 변경 후 연산 SELECT emp_name, NVL(commission_pct, 0) AS 보너스, ((salary+(salary*NVL(commission_pct, 0)))*12) AS 연봉 FROM emp; SELECT emp_name, NVL(TO_CHAR(DEPARTMENT_ID), '부서없음') FROM emp; /* 2) NVL2(컬럼, 변경할값1, 변경할값2) - 컬럼이 NULL이 아니면 변경할 값1을 반환, NULL이면 변경할값2를 반환 */ -- 보너스를 출력하는..
2023. 4. 29.