반응형
자료형 변환 함수
형 변환에는 두 가지 종류가 존재합니다. 자동으로 형 변환이 되는 암시적 형 변환, 사용자가 자료형을 직접 지정해주는 명시적 형 변환입니다.
1. 날짜, 숫자 데이터를 문자 데이터로 변환하는 함수
기준 포맷 | 설명 |
CC, SCC | 네 자리 연도의 끝 두자리를 기준으로 사용 (2021년이면 2050 이하이므로, 반올림 경우 2021년으로 처리) |
SYYYY, YYYY, YEAR, SYEAR, YYY, YY, Y | 날짜 데이터의 해당 연, 월, 일의 7월 1일 기준 (2021년 7월 1일 경우, 2022년으로 처리) |
IYYY, IYY IY, I | ISO 8061에서 제정한 날짜 기준년도 기준 |
Q | 각 분기의 두 번째 달의 16일 기준 |
MONTH, MON, MM, RM | 각 달의 16일 기준 |
WW | 해당 연도의 몇 주 (1-53번째 주)를 기준 |
IW | ISO 8061에서 제정한 날짜 기준 해당 연도의 주를 기준 |
W | 해당 월의 주 (1-5번째 주)를 기준 |
DDD, DD, J | 해당 일의 정오를 기준 |
DAY, DY, D | 한 주가 시작되는 날짜를 기준 |
HH, HH12, HH24 | 해당일의 시간을 기준 |
MI | 해당일 시간의 분을 기준 |
TO_CHAR 함수를 이용해서 날짜, 숫자 데이터를 문자 데이터로 형 변환이 가능하며 사용법은 아래와 같습니다.
SELECT SYSDATE
, TO_CHAR(SYSDATE, 'MM') AS MM
, TO_CHAR(SYSDATE, 'MON') AS MON
, TO_CHAR(SYSDATE, 'MONTH') AS MONTH
, TO_CHAR(SYSDATE, 'DD') AS DD
, TO_CHAR(SYSDATE, 'DY') AS DY
, TO_CHAR(SYSDATE, 'DAY') AS DAY
FROM DUAL;
2. 문자 데이터를 숫자 데이터로 변환하는 함수
: TO_NUMBER 함수를 이용해서 문자 데이터를 숫자 데이터로 형 변환이 가능하다.
SELECT TO_NUMBER('53,000', '999,999') - TO_NUMBER('17,000', '999,999') AS TO_NUMBER
FROM DUAL;
3. 문자 데이터를 날짜 데이터로 변환하는 함수
: TO_DATE 함수를 이용해서 문자 데이터를 날짜 데이터로 형 변환이 가능하다.
SELECT TO_DATE('2021-02-01', 'YYYY-MM-DD') AS TODATE1
, TO_DATE('20210201', 'YYYY-MM-DD') AS TODATE2
FROM DUAL;
상황에 따라 다른 데이터를 반환하는 함수
DECODE 함수와 CASE문을 이용해서 상황에 따라 다른 데이터 형 변환이 가능하다.
1. DECODE 함수
SELECT FOOD_ID, SAL
, DECODE(SAL,
'5000', SAL*0.5,
'15000', SAL-5000) AS UPDATE_SAL
FROM FOOD;
2. CASE문
SELECT FOOD_ID, SAL,
CASE SAL
WHEN 5000 THEN SAL*0.5
WHEN 15000 THEN SAL-5000
ELSE SAL * 2
END AS UPDATE_SAL
FROM FOOD;
반응형
'개발 & 데이터베이스 > DB' 카테고리의 다른 글
오라클 숫자 함수와 LPAD, RPAD 함수 (0) | 2022.02.07 |
---|---|
오라클 DML 기본문법 (INSERT, UPDATE, DELETE, SELECT) (0) | 2022.02.03 |
오라클 잡 스케줄러 생성 및 실행 방법 (0) | 2022.01.28 |
ORACLE 프로시저 생성 및 커서 사용 방법 (0) | 2022.01.26 |
오라클 LIKE 함수, REGEXP_LIKE 함수 (다중 LIKE) (0) | 2022.01.17 |