1. CAST
- 자료의 타입을 정의한 타입으로 변환
- 형변환은 해당 위치에서만 효과 유지 (영구적X)
*사용형식
CAST(expr AS 타입명)
- 'expr' 은 수식, 데이터,컬럼명이 올 수 있음
EX
매입단가(숫자. 오른쪽정렬)을
VARCHAR2 인 문자열(왼쪽정렬)로 CAST해줌
SELECT PROD_COST 매입단가,
CAST(PROD_COST AS VARCHAR2(15))
FROM PROD
WHERE PROD_LGU LIKE 'P2%';
2. TO_CHAR
- 숫자나 날짜, 문자자료를 문자열로 형변환 시킴
*사용형식
TO_CHAR(expr[,fmt])
expr는 숫자, 문자, 날짜 자료, 수식이나 컬럼명
fmt(포맷문자열) : 형식지정문자열 (생략가능) 은 문자열로 주로 날짜나 숫자자료를 일정한 형식에 맞춰 변환할 때 사용
fmt는 굉장히 여러종류가 있음 특히 날짜를 변환시켜주는게 많다.
(1) 날짜관련 형식지정 문자열
형식문자열 | 의미 |
AD,BC | 세기를 나타냄 |
YYYY,YYY,YY,Y | 년도 |
MONTH,MM(M한번은 안됨),MON,RM | 월 |
DAY,DD, J | 일 |
AM,PM,A.M., P.M. | 오전/오후 |
Q | 분기 |
W, WW | 주차 W하나면 이번달 3주차, WW를쓰면 1.1부터 현재까지의주차 |
HH,HH12,HH24 | 시간 (HH와 HH12는 12시간제라 똑같다) |
MI | 분은 MM을 못씀 (월이 이미씀) 분 |
SS, SSSSS | 초 S5개는 자정부터 지금까지의 시간을 초로 환산 |
DL | 년 월 일과 요일정보 |
EX
SELECT TO_CHAR(SYSDATE,'BC YYYY-MM-DD')
FROM DUAL;
SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD'),
TO_CHAR(SYSDATE, 'YYY-MONTH-DDD'),
TO_CHAR(SYSDATE, 'YY-MON-D')
FROM DUAL;
6: 일월화수목금토
290은 1월 1일부터 일수
TO_CHAR(SYSDATE, 'YY-RM-J')
X:로마식 표현방법
SELECT TO_CHAR(SYSDATE, 'AM YYYY-MM-DD')FROM DUAL;
AM으로 입력했지만 오후니까 오후라고나옴
SELECT TO_CHAR(SYSDATE, 'AM YYYY-MM-DD HH24:MI:SS')FROM DUAL;
SELECT TO_CHAR(SYSDATE, 'AM YYYY-MM-DD HH24:MI:SSSSS')FROM DUAL;
사용자 정의 형식지정문자열은 반드시 " " 에 기술
(" " 은 두군데,., 컬럼별칭에 특수문자 들어갔을때, 두번째가 이거!)
SELECT TO_CHAR(SYSDATE, 'AM"시" YYYY-MM-DD HH24:MI:SSSSS')FROM DUAL;
'학원수업_Oracle' 카테고리의 다른 글
201020 Oracle (0) | 2020.10.20 |
---|---|
201019 Oracle (0) | 2020.10.19 |
201016 Oracle (0) | 2020.10.16 |
201015 Oracle 함수2 (0) | 2020.10.15 |
201014 Oracle 함수 (FUNCTION) (0) | 2020.10.14 |