>데이터 베이스 >Oracle >Oracle 날짜 기능 요약 및 공유

Oracle 날짜 기능 요약 및 공유

WBOY
WBOY앞으로
2022-03-18 18:19:032415검색

이 글은 Oracle에 대한 관련 지식을 제공합니다. 주로 SYSDATE, ADD_MONTHS, LAST_DAY, TRUNC, ROUND 등 일반적으로 사용되는 날짜 함수 관련 문제를 소개합니다. 모든 분들께 도움이 되기를 바랍니다.

Oracle 날짜 기능 요약 및 공유

추천 튜토리얼: "Oracle Tutorial"

시스템 날짜 및 시간 함수

SYSDATE 함수

이 함수에는 매개변수가 없으며 시스템의 현재 시간을 가져올 수 있습니다.

케이스 코드:

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;

결과:

SYSTIMESTAMP 함수

이 함수에는 매개변수가 없으며 시스템의 현재 시간을 가져올 수 있습니다. 이 함수에는 시간대 정보가 포함되어 있으며 마이크로초 단위로 정확합니다.

케이스 코드

select systimestamp from dual;

결과:

데이터베이스 시간대 함수

DBTIMEZONE 함수

이 함수에는 입력 매개변수가 없으며 데이터베이스 시간대를 반환합니다.

케이스 코드:

select dbtimezone from dual;

결과:

날짜에 지정된 월을 추가하는 함수:

ADD_MONTHS(r,n) 함수

이 함수는 지정된 날짜에 추가된 개월 수를 반환합니다. r n 이후의 날짜.

r: 지정된 날짜입니다.

n: 더할 개월 수 N이 음수인 경우 뺄 개월 수를 의미합니다.

케이스 코드:

select to_char(add_months(to_date('2018-11-12', 'yyyy-mm-dd'), 1),
               'yyyy-mm-dd'),
       to_char(add_months(to_date('2018-10-31', 'yyyy-mm-dd'), 1),
               'yyyy-mm-dd'),
       to_char(add_months(to_date('2018-09-30', 'yyyy-mm-dd'), 1),
               'yyyy-mm-dd')
  from dual;

결과: (지정한 날짜가 해당 월의 마지막 날인 경우 새 달의 마지막 날이 반환됩니다. 새 달의 일수가 지정된 월보다 적은 경우 유효한 날짜는 자동으로 호출됨)

월의 마지막 날 함수

LAST_DAY(r) 함수

지정된 r 날짜에 대해 이번 달의 마지막 날을 반환합니다.

케이스 코드:

select last_day(sysdate) from dual;

결과:

지정된 날짜 이후 주의 날짜 함수:

NEXT_DAY(r,c) 함수

다음 주의 날짜 문자(c)를 반환합니다. R 날짜 지정 : 요일) 해당 날짜를 나타냅니다.

케이스 코드:

 select next_day(to_date('2018-11-12','yyyy-mm-dd'),'星期四') from dual;

결과:

지정된 날짜의 특정 부분을 반환하는 함수

EXTRACT(시간) 함수

연도, 월, 일, 분할된 날짜 부분을 반환합니다. 지정된 시간.

케이스 코드:

select extract(year from timestamp '2018-11-12 15:36:01') as year,
       extract(month from timestamp '2018-11-12 15:36:01') as month,
       extract(day from timestamp '2018-11-12 15:36:01') as day,
       extract(minute from timestamp '2018-11-12 15:36:01') as minute,
       extract(second from timestamp '2018-11-12 15:36:01') as second
  from dual;

결과:

두 날짜 사이의 개월 수를 반환합니다.

MONTHS_BETWEEN(r1,r2) 함수

이 함수는 r1 날짜와 r2 날짜의 직접적인 달을 반환합니다. r1>r2인 경우 양수가 반환됩니다. r1과 r2가 서로 다른 달의 같은 날이면 정수가 반환되고, 그렇지 않으면 소수가 반환됩니다. r1

케이스 코드:

select months_between(to_date('2018-11-12', 'yyyy-mm-dd'),
                      to_date('2017-11-12', 'yyyy-mm-dd')) as zs, --整数
       months_between(to_date('2018-11-12', 'yyyy-mm-dd'),
                      to_date('2017-10-11', 'yyyy-mm-dd')) as xs, --小数
       months_between(to_date('2017-11-12', 'yyyy-mm-dd'),
                      to_date('2018-10-12', 'yyyy-mm-dd')) as fs --负数
  from dual;

결과:

날짜 가로채기 기능

ROUND(r[,f]) 기능

날짜 r을 f 형식에 따라 반올림합니다. f가 채워지지 않으면 가장 가까운 날로 반올림됩니다.

케이스 코드:

select sysdate, --当前时间
       round(sysdate, 'yyyy') as year, --按年
       round(sysdate, 'mm') as month, --按月
       round(sysdate, 'dd') as day, --按天
       round(sysdate) as mr_day, --默认不填按天
       round(sysdate, 'hh24') as hour --按小时
  from dual;

결과:

TRUNC(r[,f]) function

은 날짜 r을 f 형식으로 가로챕니다. f가 채워지지 않으면 현재 날짜가 차단됩니다.

사례 코드:

select sysdate, --当前时间
       trunc(sysdate, 'yyyy') as year, --按年
       trunc(sysdate, 'mm') as month, --按月
       trunc(sysdate, 'dd') as day, --按天
       trunc(sysdate) as mr_day, --默认不填按天
       trunc(sysdate, 'hh24') as hour --按小时
  from dual;

결과:

추천 튜토리얼: "Oracle Learning Tutorial"

위 내용은 Oracle 날짜 기능 요약 및 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제