>  기사  >  데이터 베이스  >  오라클 시간 형식 쿼리

오라클 시간 형식 쿼리

王林
王林원래의
2023-05-17 22:13:364030검색

Oracle은 다양한 엔터프라이즈급 애플리케이션에서 널리 사용되는 인기 있는 관계형 데이터베이스 관리 시스템입니다. Oracle에서 날짜와 시간은 많은 비즈니스 기능의 구현이 이에 의존하기 때문에 매우 중요한 데이터 유형입니다. Oracle은 다양한 날짜 및 시간 형식을 지원합니다. 이 문서에서는 Oracle에서 날짜 및 시간 형식을 쿼리하고 사용하는 방법을 소개합니다.

1. Oracle 날짜 및 시간 데이터 유형

Oracle은 DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE 및 TIMESTAMP WITH LOCAL TIME ZONE의 4가지 날짜 및 시간 데이터 유형을 지원합니다.

  1. DATE: 가장 일반적으로 사용되는 날짜 및 시간 데이터 유형으로 연도, 월, 일, 시, 분, 초를 포함한 날짜 및 시간을 저장할 수 있으며 연산, 비교 및 ​​서식 지정을 지원합니다.
  2. TIMESTAMP: DATE보다 더 정확한 날짜 및 시간 데이터 유형으로 나노초 정밀도를 지원합니다.
  3. TIMESTAMP WITH TIME ZONE: TIMESTAMP를 기준으로 시간대 정보가 추가됩니다.
  4. TIMESTAMP WITH LOCAL TIME ZONE: TIMESTAMP WITH TIME ZONE과 유사하지만 시간을 데이터베이스 시간대의 현지 시간으로 변환합니다.

2. Oracle 날짜 및 시간 형식 쿼리

날짜 및 시간 데이터를 쿼리할 때 날짜 및 시간을 특정 형식으로 변환하려면 TO_CHAR 함수를 사용해야 합니다. 다음은 일반적으로 사용되는 Oracle 날짜 및 시간 형식입니다.

날짜 형식:

  • YYYY: 연도, 4자리(예: 2021)
  • YY: 연도, 2자리(예: 21)
  • MM: 월, 숫자로 표시(예: 09)
  • MON: 월, 약어로 표시(예: SEP)
  • MONTH: 월, 전체 이름으로 표시(예: SEPTEMBER)
  • DD: 일, 다음으로 표시 숫자(예: 08)
  • DY 또는 DAY: 요일, 약어 또는 전체 이름(예: MON 또는 MONDAY)

시간 형식:

  • HH24: 시간, 24시간 형식, 숫자 표현
  • MI: 분, 숫자 표현
  • SS: 초, 숫자 표현

예:

  1. 현재 날짜 및 시간 쿼리: SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;
  2. 현재 날짜 쿼리: SELECT TO_CHAR(SYSDATE,'YYYY- MM-DD') FROM DUAL;
  3. 현재 시간 쿼리: SELECT TO_CHAR(SYSDATE,'HH24:MI:SS') FROM DUAL;
  4. 1주일 전 날짜 쿼리: SELECT TO_CHAR(SYSDATE-7,'YYYY-MM- DD') FROM DUAL;
  5. 당월 쿼리: SELECT TO_CHAR(SYSDATE,'MM') FROM DUAL;
  6. 현재 분기 쿼리 : SELECT TO_CHAR(ADD_MONTHS(TRUNC(SYSDATE,'Q'),2),'Q' ) FROM DUAL;
  7. 현재 연도 쿼리: SELECT TO_CHAR(SYSDATE,'YYYY') FROM DUAL;
  8. 내일 날짜 쿼리: SELECT TO_CHAR(SYSDATE+1,'YYYY-MM-DD') FROM DUAL;
  9. Query 이번 달의 1일 날짜: SELECT TO_CHAR(TRUNC(SYSDATE,'MONTH'),'YYYY-MM-DD' ) FROM DUAL;
  10. 전월 말일의 날짜 조회: SELECT TO_CHAR(LAST_DAY(ADD_MONTHS(SYSDATE, -1)),'YYYY-MM-DD') FROM DUAL;

3을 사용합니다. 날짜 및 시간 함수

Oracle은 TO_CHAR 함수 외에도 날짜 및 시간 데이터를 쿼리하고 처리하는 데 사용할 수 있는 다양한 날짜 및 시간 함수를 제공합니다.

  1. ADD_MONTHS(date,n): 날짜에 n개월을 더합니다. n개월을 빼려면 n이 음수일 수 있습니다.
  2. MONTHS_BETWEEN(date1,date2): date1과 date2의 개월 수 차이를 계산합니다.
  3. TRUNC(날짜, 형식): 날짜 간격 및 비교를 계산하는 데 자주 사용되는 지정된 형식에 따라 날짜를 자릅니다.
  4. LAST_DAY(date) : 해당 날짜가 속한 달의 마지막 날을 반환합니다.
  5. EXTRACT(unit FROM date): 날짜에서 지정된 시간 단위(년, 월, 일, 시, 분, 초, 요일 등)를 추출합니다.

예:

  1. 직원의 입사일로부터 얼마나 지났는지 쿼리: SELECT * FROM 직원 WHERE EXTRACT(MONTH FROM birthday_date) = EXTRACT(MONTH FROM SYSDATE);
  2. 직원의 다음 생일까지 남은 일수 쿼리 : SELECT TRUNC(MONTHS_BETWEEN(TRUNC(SYSDATE,'YYYY'),TRUNC(생년월일,'YYYY')) /12)
  3. 365+TRUNC(MOD(MONTHS_BETWEEN(TRUNC(SYSDATE,'YYYY'),TRUNC(생년월일,' YYYY')),1)
  4. 12.0/11*365) FROM 직원 WHERE Employee_id=100;
  5. 위는 날짜 및 시간 쿼리와 함수의 일반적으로 사용되는 몇 가지 예일 뿐이며 실제 사용에서는 유연하게 사용해야 합니다. 특정 요구에 따라 결합됩니다.

요약:

Oracle 날짜 및 시간 형식 쿼리는 데이터베이스 개발의 필수적인 부분입니다. 올바른 날짜 및 시간 형식과 계산 방법은 비즈니스 데이터의 정확성과 안정성을 보장할 수 있습니다. 이 글에서는 오라클의 데이터 유형, 날짜 및 시간 형식, 기능을 자세히 소개하여 실제로 모든 사람의 날짜 및 시간 쿼리 및 처리에 도움이 되기를 바랍니다.

위 내용은 오라클 시간 형식 쿼리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.