일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- collection framework
- Spring
- JSR - 303
- 스프링 인터셉터
- JSR - 380
- 자바오류
- annotation
- 오라클 CREATE
- Dependency Injection
- Spring 객체로 주입받기
- 오라클 DROP
- ddl alter
- properties 변수
- 자바스크립트
- Spring message
- DDL DROP
- 자바 List
- properties 파일 주입
- Spring MVC Interceptor
- DDL TRUNCATE
- Spring MVC5 기본 세팅
- Spring 커맨드 객체
- 스프링 파라미터 추출
- Servlet cookie
- 오라클 TRUNCATE
- Mybatis 오류
- properties 파일
- Spring Cookie
- 코드로 배우는 스프링 웹 프로젝트
- 자바
- Today
- Total
개발이좋아
[Oracle] 형 변환 함수 (type conversion function) 본문
오라클에는 자료의 자료형(Data Type)을 바꿔주는 함수가 있다.
숫자나 날짜 데이터를 문자 데이터로 문자형(CHAR) 데이터는 숫자형(NUMBER) 데이터나 날짜형(DATE) 데이터로 변환이 가능하다.
즉 문자형 데이터를 중심으로 숫자형과 날짜형 데이터로의 변환이 가능한 것이다.
그 외에 숫자로 구성된 문자형 데이터 (EX '10')와 숫자형 데이터를 연산 시 자동으로 숫자형 데이터로 변환되는
묵시적 또는 암시적 형 변환(implicit type conversion)이 있다.
형 변환 함수 참고 : Do it! 오라클로 배우는 데이터베이스 입문
종류 | 설명 |
TO_CHAR | 숫자 또는 날짜 데이터를 문자 데이터로 변환 |
TO_NUMBER | 문자 데이터를 숫자 데이터로 변환 |
TO_DATE | 문자 데이터를 날짜 데이터로 변환 |
TO_CHAR
TO_CHAR 함수는 숫자 또는 날짜 데이터를 문자 데이터로 변환하는 함수이다.
주로 날짜 데이터를 문자 데이터토 변환한데 많이 사용하며 기본형은 아래와 같다.
TO_CHAR([날짜 데이터(필수)], '[출력되길 원하는 문자 형태(필수)']) - TO_CHAR 기본 형
출력되길 원하는 문자 형태는 아래 주소의 오라클에서 제공하는 포맷 형태를 참고하면 된다.
https://docs.oracle.com/cd/E11882_01/server.112/e41084/sql_elements004.htm#SQLRF00210
Format Models
The total length of a datetime format model cannot exceed 22 characters. The default datetime formats are specified either explicitly with the NLS session parameters NLS_DATE_FORMAT, NLS_TIMESTAMP_FORMAT, and NLS_TIMESTAMP_TZ_FORMAT, or implicitly with the
docs.oracle.com
(Oracle 11g format Models)
위 사진의 SQL문은 현재 날짜 데이터를 YYYY/MM/DD HH24:MI:SS 포맷 형태의 문자 데이터로 바꾸어 출력한 예제이다.
YYYY/MM/DD는 4자리 수 연도와 2 자릿수 월, 2자리 수 일을 나타내며 HH24:MI:SS는 각각 시, 분, 초를 나타낸다.
TO_NUMBER
TO_NUMBER 함수는 문자형 데이터를 숫자형 데이터로 변환할 때 사용하는 함수이다.
TO_NUMBER('[문자열 데이터(필수)]', [인식될 숫자 형태(필수)]') - TO_NUMBER 기본 형
위 사진의 예제는 '1,300'과 '1,500' 이라는 문자형 데이터를 '999,999' 포맷으로 하는 숫자 데이터로 변경하여 그 값들의 빼기 연산을 한 SQL문이다.
여기서 '999,999' 포맷의 9는 숫자 한자리를 의미하며 빈자리 수는 채우지 않는다.
만약 포맷으로 '0000'의 데이터가 오면 빈 자리를 0으로 채운다.
포맷 형식 참고 : Do it! 오라클로 배우는 데이터베이스 입문
형식 | 설명 |
9 | 숫자의 한 자리를 의미(빈 자리를 채우지 않음) |
0 | 빈 자리를 0으로 채움을 의미 |
$ | 달러($) 표시를 붙여 출력 |
L | L(Locale) 지역 화폐 단위 기호를 붙여서 출력 |
. | 소수점을 표시 |
, | 천 단위의 구분 기호를 표시 |
T0_DATE
TO_DATE 함수는 문자형 데이터를 날짜형 데이터로 변환해주는 함수이다.
TO_DATE('[문자열 데이터(필수)]', '[인식될 날짜 형태(필수)]') - TO_DATE 기본 형
위 사진의 예제는 '2020-02-20'과 '20200220' 이라는 문자열 데이터를 'YYYY-MM-DD' 형태의 날짜 데이터로 변환하는 예제이다.
결과는 둘 다 같은 결과가 출력된다.
본 포스팅은 필자가 공부한 내용을 정리한 것으로 오류가 존재할 수 있습니다.
참고: Do it! 오라클로 배우는 데이터베이스 입문
![]() |
|
'DataBase' 카테고리의 다른 글
[Oracle] 테이블의 데이터를 수정하는 UPDATE문 (0) | 2020.02.26 |
---|---|
NVL과 NVL2 (0) | 2020.02.24 |
[Oracle] 자체 조인 (self join) (0) | 2020.02.22 |
[Oracle] 날짜 데이터 처리 함수(DATE TYPE FUNCTION) (0) | 2020.02.21 |
[Oracle] ORA-00937 (0) | 2020.02.20 |