Oracle Database -형변환 함수
Oracle Database - 숫자와 날짜 함수
https://kwanghyung.tistory.com/entry/Oracle-Database-%ED%95%A8%EC%88%98%EB%93%A4 Oracle Database - 함수들 https://kwanghyung.tistory.com/entry/Oracle-Database-SELECT%EB%AC%B8-IS-NULLINORDER-BY-%EB%9..
kwanghyung.tistory.com
NUMBER/DATE-> CHARACTER
:TO_CHAR (NUMBER/DATE, 포맷)
:숫자형 또는 날짜형 데이터타입을 문자형 타입으로 변환하는것을 말합니다.
NUMBER/CHARACTER -> DATE
:TO_DATE(NUMBER/CHARACTER,포멧): 숫자형 또는 문자형 데이터를 날짜형 데이터로 변환하는것을 말합니다.
(결과값 DATE타입)
CHARACTER -> NUMBER
:TO_NUMBER (문자형, 포멧) : 문자형 데이터를 숫자형으로 변환 합니다.(결과값은 NUMBER타입)
< NULL처리 함수>
NVL(컬럼명, 해당컬럼명이 NULL일 경우 반환할 값)
해당 컬럼값이 존재할경우 (NULL이 아닐 경우) 기존의 컬럼값 반환
해당 컬럼값이 존재하지 않을 경우 ( NULL값일 경우) 내가 제시한 특정값을 반환
NVL2(컬럼명, 결과값, 결과값2)
해당 컬럼에 데이터가 존재한다면(NULL이 아닐경우) 결과값 반환
해당 컬럼에 데이터가 존재하지 않는다면 (NULL 일경우) 결과값2 반환
보너스가 있는 사원은 보너스있음, 보너스가 없는 사람은 보너스가 없음을 조회해보자
SELECT EMP_NAME,BONUS,NVL2(BONUS,'보너스있음','보너스없음')
FROM EMPLOYEE;
NULLIF(비교대상, 비교대상2)
두 값이 동일할 경우 NULL 반환
두 값이 동일하지 않을 경우 비교대상1 반환
DECODE (비교대상, 조건값1, 결과값1, 조건값2, 결과값2, ....조건값N, 결과값)
SWITCH( 비교대상) {
CASE 조건값 1 : 결과값1 BREAK;
CASE 조건값 2 : 결과값2 BREAK;
CASE 조건값 3 : 결과값3 BREAK;
DEFAULT : 결과값;
[표현법]
CASE WHEN 조건식1 THEN 결과값1
WHEN 조건식2 THEN 결과값2
WHEN 조건식3 THEN 결과값3
...
ELSE 결과값
사번, 사원명, 주민등록번호, 주민등록번호로부터 성별자리를 추출('1'이면 남자, '2',여자)
SELECT EMP_ID 사번
,EMP_NAME 사원명
,EMP_NO 주민번호
,CASE WHEN SUBSTR(EMP_NO,8,1)=1 THEN '남자'
WHEN SUBSTR(EMP_NO,8,1)=3 THEN '남자'
ELSE '여자'
END
FROM EMPLOYEE;
'DB-디비는 즐겁다' 카테고리의 다른 글
Oracle Database - GROUP BY,HAVING (0) | 2022.06.23 |
---|---|
Oracle Database - 집계함수 (1) | 2022.06.22 |
Oracle Database - 숫자와 날짜 함수 (0) | 2022.06.20 |
Oracle Database-SELECT문 IS NULL,IN,ORDER BY 등 문법들 (0) | 2022.06.14 |
Oracle Database -SELECT문 WHERE절 및 문법들 (0) | 2022.06.13 |
댓글
이 글 공유하기
다른 글
-
Oracle Database - GROUP BY,HAVING
Oracle Database - GROUP BY,HAVING
2022.06.23 -
Oracle Database - 집계함수
Oracle Database - 집계함수
2022.06.22 -
Oracle Database - 숫자와 날짜 함수
Oracle Database - 숫자와 날짜 함수
2022.06.20 -
Oracle Database-SELECT문 IS NULL,IN,ORDER BY 등 문법들
Oracle Database-SELECT문 IS NULL,IN,ORDER BY 등 문법들
2022.06.14