..
Oracle SQL (1)
날짜관련 쿼리
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
1. char -> date로 변경

쿼리

select to_date(substr('20140101113010123',0,14), 'yyyymmddhh24miss')
from dual;

설명 

17자리 문자를 substr 함수를 이용하여 14자리로 자르고 date 타입으로 변환


2. date -> char 변경

쿼리

select to_char(sysdate, 'YYYY-MM-DD HH24:MI:SS')
from dual;

설명
현재 날짜를 원하는 포맷으로 변경하기


3. 매달의 마지막 날 구하기

쿼리문

select LAST_DAY(TO_DATE(200902, 'YYYYMM'))
from dual;

결과

2009/02/28 00:00:00

4. Lpad : 왼쪽에 특정 문자 끼어 넣기

쿼리문

select LPAD(ROWNUM, 2, '0')  -- 두자리로 세팅하고 남으면 0으로
from dual;

5. 매달 모두 출력하기

쿼리문

SELECT 200902 || LPAD(ROWNUM, 2, '0') CHKDATE
        FROM   DUAL CONNECT BY LEVEL <= TO_CHAR(LAST_DAY(TO_DATE(200902, 'YYYYMM')), 'DD');

결과

20090201
20090202
20090203
20090204
20090205
.
.
.

6. 선데이터를 점데이터로 변환 하기 위해서는 조인을 해야 한다.

조건1
copyt 테이블 이용 (숫자용/날짜용)

조건2
where sdate <= sysdate
and edate >= sysdate

7. CONNECT BY LEVEL < = 숫자

숫자보다 적은 수 뿌리기


'DEV > DB' 카테고리의 다른 글

[oracle] 자신이 원하는 순서대로 정렬하기  (0) 2009.06.23
select 문  (0) 2009.03.24
[sql] update join  (0) 2009.03.24
  Comments,     Trackbacks