to_date() : 문자형 데이터를 날짜형으로 변환한다.
예)
insert into ec_order (order_no, order_id, product_code, order_qty, csel, cmoney, cdate , mdate , gubun)
values ('test', 'usko','TV03', 2,'현급입금', 50000, to_date('2002:02:22', 'YYYY:MM:DD'), to_date('2002/02/22 22:22:22', 'YYYY/MM/DD HH24:MI:SS'),'미결재');
결과)
test usko TV03 2 현급입금 50000 2002/02/22 00:00:00 2002/02/22 22:22:22 미결재
데이터가입력이 되었다.
*주의
사용자세션에 date foramt 이 YY/MM/DD 일 경우
insert 또는 select 시 ro_date() 함수에서 변환 형식을 YY-MM-DD로 바꾸어도
입출력이 YY/MM/DD 로 처리가 된다. 결국 현제 사용자 세션 nls_date_format 에 자동으로 적용되므로 참고하자.
*사용자 세션 date format 변경법
alter session set nls_date_format = 'YYYY/MM/DD';
alter session set nls_date_format = 'YYYY/MM/DD HH24:MI:SS';
등등
*일반 적으로 db에 날짜 정보를 출력할때는 문자형으로 변환하여 출력하는것이 좋다.
to_char() : 숫자나 날짜형 데이터를 문자형 데이터로 변환한다.
날짜를 문자로 변경할때...
예)
먼저 날짜형 형식을 YYYY-MM-DD 로 변환한다.
alter session set nls_date_format = 'YYYY-MM-DD';
1990/06/23 처럼 출력하되 format을 변경하지않고 문자형으로 출력해야될경우
select to_char(current_date,'YYYY/MM/DD') from dual;
결과)
2016/01/26
format 에 상관없이 문자형데이터로 출력되었다 문자형 데이터이므로 문자형 함수의 사용도 가능하다.
예) select CONCAT(to_char(current_date,'YYYY/MM/DD'),' 생년월일') from dual;
결과)
2016/01/26 생년월일
*참고 : 문자형 함수와 날짜형 함수는 서로 형변환이 자동으로 이루지는 경우가 있다.
숫자를 문자로 변경할때...
형식요소
9 : 자리수를 지정
0 : 0으로 채운다
. : 소수점추가
, : 천만단위마다 , 추가
$ : 화폐단위 표시
L : 국가별 화폐단위 표시
EEEE : 지수형태로 표시
S : 부호 표시
B : 공백으로 채움
예)select to_char(123123,'000999999') from dual;
결과) 000123123
예)select to_char(123123,'999999') from dual;
결과) 123123
예)select to_char(123123,'0999')from dual;
결과)#####
형식요소보다 변환하고자 하는 숫자데이터의 자리수가 많은경우 표현이 되지않는다.
적을 경우는 생략된다.
예)select to_char(123123,'9999.99') from dual;
결과)#####
소수점 표현형식을 사용했지만 실수형 데이터가 아니면 표현이 안된다.
결국 바꾸고자 하는 숫자의 형태에 따라 그에 맞는 형식요소를 대입해주어야 정상적인 값이 출력된다.
to_number() : 문자형 데이터를 숫자형 데이터로 변환한다.
위와 반대로 문자를 숫자로 변형하고자 할때
같방법인데 거꾸로 함수가 적용된다고 생각하면된다
예) $123.23 데이터를 숫자로 바꾸기
select to_number('$123.45','$999.99') from dual;
결과)
123.45
2016년 1월 25일 월요일
피드 구독하기:
댓글 (Atom)
[oracle]백업및 복구
[oracle]백업및 복구 오라클 덤프 백업및 복구 윈도우 서버 기반 간단 정리 --디렉터리 조회 sqlplus 또는 dbtool 입력시작 SELECT * FROM DBA_DIRECTORIES ; --D:...
-
수십대의 서버에 특정 쉘을 실행한다거나 파일을 수정해야할경우 호스트 입력 아이디 입력 패스워드 입력은 여간 짜증나는일이 아닐수 없다. 이를 한방에 해주는 방법 teraterm 를 설치한다( putty 는 버리자 ) 예를 들면 19...
-
pom.xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId...
-
notice_state 란 이름의 체크박스가 있다 가정하고 $("input[name=notice_state]").bind("click",false); 끝.
댓글 없음:
댓글 쓰기