select /* 오늘날짜 시분초 포함*/ 

              to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') 

    from dual


 

select /* 오늘날짜 00시 00분 00초 */ 

              to_char(trunc(sysdate),'yyyy/mm/dd hh24:mi:ss') 

    from dual

 

select /* 오늘날짜 00시 00분 00초 위와 동일*/ 

              to_char(trunc(sysdate,'dd'),'yyyy/mm/dd hh24:mi:ss') 

    from dual


select /* 이번달 1일 00시 00분 00초 */ 

              to_char(trunc(sysdate,'mon'),'yyyy/mm/dd hh24:mi:ss') 

    from dual


select /* 올해 1월 1일 00시 00분 00초 */ 

              to_char(trunc(sysdate,'year'),'yyyy/mm/dd hh24:mi:ss') 

    from dual

 

select /* 올해 1월 1일 00시 00분 00초 */ 

              to_char(to_date('2002','yyyy'),'yyyy/mm/dd hh24:mi:ss') 

    from dual

 

select /* 2월 1일 00시 00분 00초 */ 

              to_char(to_date('200202','yyyymm'),'yyyy/mm/dd hh24:mi:ss') 

    from dual


select /* 2월 2일 00시 00분 00초 */ 

              to_char(to_date('20020202','yyyymmdd'),'yyyy/mm/dd hh24:mi:ss') 

    from dual

 

select /* 2월 2일 00시 00분 01초 */ 

              to_char(to_date('20020202','yyyymmdd')+1/68400,'yyyy/mm/dd hh24:mi:ss') 

    from dual

 

select /* 2월 2일 00시 00분 00초 -> 한달뒤*/ 

              to_char(add_months(to_date('20020202','yyyymmdd'),1),'yyyy/mm/dd hh24:mi:ss')


 from dual

 

from en-core

laalaal~ 

 

 

날짜 빼기

 

밑에 날짜 빼기가 있던데 요건 약간 다르게..

(1) 현재 날자에서 하루를 빼고 싶다고 하면 

            select sysdate() - 1 from dual

(2) 1시간을 빼고 싶으면 

            select sysdate() - 1/24 from dual

(3) 1분을 빼고 싶으면 

            select sysdate() - 1/24/60

(q) 1초를 빼고 싶은면 어떻게 할까요? ^^

 

======================================================================================

- 날짜형 함수

    SYSDATE : 현재 시스템의 날짜 및 시간을 구함

    LAST_DAY : 지정한 날짜의 해당 월의 마지막 날짜를 구함

    MONTHS_BETWEEN : 두 날짜 사이의 개월 수를 구함

    ADD_MONTHS : 지정한 날짜로부터 몇 개월 후의 날짜를 구함

    ROUND : 날짜에 대한 반올림

    TRUNC : 날짜에 대한 버림

 

    SYSDATE : SYSDATE → 10-MAY-99

    LAST_DAY(날짜값) : LAST_DAY('17-FEB-98') → 28-FEB-98

   MONTHS_BETWEEN(날짜값1, 날짜값2) : MONTHS_BETWEEN('26-APR-97','22-JUL-95') → 21.1290323

   ADD_MONTHS(날짜값, 숫자값) : ADD_MONTHS('22-JUL-95',21) → 22-APR-97

      ROUND(날짜값, 자리수) : 현재 날짜가 1999년 5월 10일이라고 가정하자.

                              ROUND(SYSDATE,'MONTH') → 01-MAY-99

      TRUNC(날짜값, 자리수) : 현재 날짜가 1999년 5월 10일이라고 가정하자.

                              TRUNC(SYSDATE,'YEAR') → 01-JAN-99

 

  - 날짜에 대한 산술연산

    날짜 + 숫자 : 날짜 특정한 날로부터 몇일 후의 날짜 계산

    날짜 - 숫자 : 날짜 특정한 날로부터 몇일 전의 날짜 계산

    날짜 - 날짜 : 숫자 두 날짜 사이의 차이를 숫자로 계산

 


- 변환형 함수


    TO_CHAR : 숫자나 날짜를 문자열로 변환

    TO_NUMBER : 문자를 숫자로 변환

    TO_DATE : 문자를 날짜로 변환

 

      - TO_CHAR에서 숫자를 문자로 변환시에 형식에 사용되는 요소

          9 : 일반적인 숫자를 나타냄

          0 : 앞의 빈자리를 0으로 채움

          $ : dollar를 표시함

          L : 지역 통화 단위(ex \)

          . : 소숫점을 표시함

          , : 천단위를 표시함

      - TO_CHAR에서 날짜를 문자로 변환시에 형식에 사용되는 요소

          SCC : 세기를 표시 S는 기원전(BC) 

          YEAR : 연도를 알파벳으로 spelling

          YYYY : 4자리 연도로 표시

          YY : 끝의 2자리 연도로 표시

          MONTH : 월을 알파벳으로 spelling

          MON : 월의 알파벳 약어

          MM : 월을 2자리 숫자로 표시

          DAY : 일에 해당하는 요일

          DY :  일에 해당하는 요일의 약어

          DDD,DD,D : 연도,월,일 중의 날짜를 숫자로 표시

          HH , HH24 : (1-12) , (0-23)중의 시간을 표시

          MI : 분을 표시

          SS : 초를 표시

          AM(A.M.),PM(P.M.) : 오전인지 오후인지를 표시

 

      TO_CHAR(문자값,‘형식’)

        숫자를 문자로 변환 : TO_CHAR(350000,'$999,999')→ $350,000

        숫자를 날짜로 변환 : TO_CHAR(SYSDATE,'YY/MM/DD')→ 95/05/25

      TO_DATE(문자값, ‘형식’) : TO_DATE('10 SEPTEMBER 1992','DD MONTH YYYY')→10-SEP-92

      TO_NUMBER(문자값) : TO_NUMBER('1234')→ 1234

Posted by 사라링
BLOG main image
.. by 사라링

카테고리

사라링님의 노트 (301)
JSP (31)
J-Query (41)
JAVA (24)
VM-WARE (0)
디자인패턴 (1)
스크랩 (0)
스트러츠 (3)
안드로이드 (11)
오라클 (45)
우분투-오라클 (1)
이클립스메뉴얼 (6)
스프링3.0 (23)
자바스크립트 (10)
HTML5.0 (17)
정보처리기사 (1)
기타(컴퓨터 관련) (1)
문제점 해결 (3)
프로젝트 (2)
AJAX (4)
하이버네이트 (3)
트러스트폼 (11)
Jeus (2)
재무관리(회계) (5)
정규식 (5)
아이바티스 (8)
취미 (2)
소프트웨어 보안 관련모음 (0)
정보보안기사 (6)
C언어 베이직 및 프로그램 (3)
보안 관련 용어 정리 (2)
넥사크로 (6)
Total :
Today : Yesterday :