10. 변환함수(1)
- 데이터 타입(날짜,숫자,문자)을 변환하기 위해 사용 to_char ** 사용법 : to_char(대상[, 포맷]) - 대상 : 날짜, 숫자 1. 숫자 -> 문자 case1) 단순 문자 타입 변경 select nvl(to_char(comm),'보너스없음') from emp;case2) 숫자 형태 변경 - 숫자 자리수 전달 시 9 또는 0 사용 - 9는 부족한 자리수를 공백으로, 0 사용 시 0으로 채움 ex) 1,000 $1000 1000.00 select sal, to_char(sal,'99999'), -- ' 800' to_char(sal,'00000'), -- 00800 to_char(sal,'09999'), -- 00800 t..
8. 일반함수(2), 숫자함수
1. 조건문/함수- if문, case문과 같이 조건별 명령을 다르게 하는 구문 - SQL은 if문 사용 불가(PL/SQL문에서는 가능) - ORACLE에서는 case문과 decode를 사용한 조건처리 예) if문 형식(oracle 문법 아님) if comm is null then 0 else comm*1.1 1) decode - 조건문 축약 함수 - 일치조건에 대한 처리만 가능(대소비교 불가) ** 사용법 : decode(대상,조건상수1,리턴1[,조건상수2,리턴2,.....,기타리턴]) - 기타리턴(else값) 생략 시 null 리턴 select deptno, decode(deptno,10,'A'), decode(deptno,10,'A','B'), de..
7. 일반함수(1)
1. nvl, nvl2 : null 치환 함수 1) nvl, nvl2 ** 사용법 (1) nvl(대상, 치환값) - 대상과 치환값의 데이터 타입이 일치해야 함(단, 첫번째 인수의 데이터 타입이 최종 데이터 타입이 됨) select ename, sal, comm, sal+comm as 총급여1, sal + nvl(comm,0) as 총급여2 from EMP;다음 결과를 볼 수 있는데 아래 결과를 살펴보자. select sal, comm, nvl(comm, '보너스없음') from emp; 이유는 comm의 데이터 타입이 숫자인데 null값에 '보너스없음'이라는 문자를 채워넣을 수 없음. select ename, sal, comm, sal+comm as 총급여..
6. 문자열 함수(2)
1. replace와 translate1) replace : 단어 치환 삭제 ** 사용법 : replace(대상,찾을단어[,바꿀단어]) 2) translate : 글자 치환 삭제 ** 사용법 : translate(대상,찾을문자열,바꿀문자열) - 찾을문자열과 바꿀문자열 글자별로 매핑하여 치환 - 찾을문자열 길이 - 찾을문자열 길이 > 바꿀문자열 길이 : 바꿀문자열에 빈문자열 전달 시 모든 글자 삭제됨 - 바꿀문자열 생략 불가 예제1) select replace('abcba','ab','AB'), --ABcba translate('abcba','ab','AB') --ABcBA from dual; select translate('abcba','ab','ABC'), --ABc..