Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Oracle
- spring
- 독서리뷰
- 매핑
- Eclipse
- 우아한테크코스
- 이펙티브자바
- 공부
- study
- 독서
- 에러
- Design Pattern
- 인강리뷰
- 인프런
- 알고리즘
- JPA
- 후기
- math
- 프로그래머스
- Head First Design Pattern
- 회고
- 카카오톡1차
- 디자인패턴
- 자바
- 인코딩
- Java
- 오라클
- 람다
- javascript
- Singleton
Archives
- Today
- Total
Lee's Grow up
[오라클/ORACLE] 형변환 CAST 연산자 , TO_XXXX 함수 ( TO_NUMBER, TO_DATE, TO_CHAR ) 본문
DB/ORACLE
[오라클/ORACLE] 형변환 CAST 연산자 , TO_XXXX 함수 ( TO_NUMBER, TO_DATE, TO_CHAR )
효기로그 2019. 9. 10. 14:01반응형
1. 형 변환의 원칙
- 암시적 형 변환은 원하지 않는 결과가 발생할 수 있으니 명시적으로 형 변환을 사용
- 단순하게 데이터 타입의 변환은 CAST 연산자 사용
- 데이터 타입의 변환 + 포맷이 필요한 경우는 TO_XXXX 함수를 사용
- WHERE 절의 컬럼은 형 변환을 최소화
2. CAST 연산자
CAST 연산자는 단순한 데이터 타입 변환에 사용하기 편함
SELECT CAST ( 사원번호 AS VARCHAR(3)) -- 숫자형에서 문자로
,CAST ( 부서코드 AS NUMBER(3)) -- 문자에서 숫자로
,CAST ( NULL AS VARCHAR(3)) -- NULL 에서 문자로
FROM 사원정보
3. TO_XXXX 함수
특정 형식의 값이 필요한 경우 TO_CHAR, TO_DATE, TO_NUMBER의 형변환 함수 사용
문자 타입 | 함수명 | 문자타입 | 함수명 | 문자타입 |
--> TO_CHAR --> | <-- TO_CHAR <-- | |||
NUMBER | CHARACTER | DATE | ||
<-- TO_NUMBER <-- | --> TO_DATE --> |
TO_CHAR 포맷 예제
SELECT TO_CHAR(123456789) AS 숫자_문자-- 문자로 취급
FROM DUAL
UNION ALL
SELECT TO_CHAR(123456789,'99999999999') -- 빈자리 공백 처리 포맷
FROM DUAL
UNION ALL
SELECT TO_CHAR(123456789,'00000000000') -- 빈자리 0으로 처리 포맷
FROM DUAL
UNION ALL
SELECT TO_CHAR(123456789,'999,999,999,999') -- , 단위 구분
FROM DUAL
UNION ALL
SELECT TO_CHAR(1.23456789,'0.9999999999999') -- 소숫점
FROM DUAL
UNION ALL
SELECT TO_CHAR(123456789,'$999,999,999,999') -- $ 통화 표시
FROM DUAL
UNION ALL
SELECT TO_CHAR(123456789,'L999,999,999,999') -- 지역 통화 한국의 경우 원표시
FROM DUAL
UNION ALL
SELECT TO_CHAR(1234,'XXX') -- 16 진수로 변환
FROM DUAL
UNION ALL
SELECT TO_CHAR(-12,'999,999pr') -- 음수를 꺽세로 표시
FROM DUAL;
쿼리 실행 결과
DATE FORMAT
FORMAT | 설명 | FORMAT | 설명 |
YYYY | 년도 표시 ( 4자리 ) | YY | 년도 표시 ( 2자리 ) |
D | 요일 표시 ( 1 -7 ) | DAY | 요일 표시 ( 월....일 ) |
DD | 달의 날짜 표시 ( 1-31 ) | DDD | 년의 날짜 표시 ( 1 - 365 ) |
MM | 월을 표시 ( 1 - 12 ) | MONTH | 월의 이름 출력 ( 1월..12월 ) |
WW | 년의 주 표시 ( 1 - 53 ) | IW | 년의 주 표시 ( 1 - 53 ) 국제표준 |
HH | 시간 표시 ( 1 -12 ) | MI | 분 표시 |
SS | 초표시 |
반응형
'DB > ORACLE' 카테고리의 다른 글
[오라클/ORACLE] 순위함수 RANK(), ROW_NUMBER(), DENSE_RANK() 분석함수 사용법 차이점 개념 (0) | 2019.09.23 |
---|---|
[오라클/ORACLE] WINDOW FUNCTION 윈도우 함수와 WINDOWING 절 / 순위함수,집계함수, 행 순서 관련 함수 (0) | 2019.09.23 |
[오라클/ORACLE] 몬테카를로 방법(Monte Carlo method)을 통한 PI(원주율,파이) 계산 쿼리(QUERY) (1) | 2019.09.06 |
[오라클/ORACLE] NULL ( 널 ) 의 개념 / 널이란 ? NULL 이란 (0) | 2019.09.06 |
[오라클/ORALCE] 쿼리(QUERY)로 달력(CALENDAR) 그리기 (0) | 2019.09.05 |
Comments