programing

오라클에서 인터벌 함수

skycolor 2023. 10. 9. 22:25
반응형

오라클에서 인터벌 함수

쿼리:

SELECT INTERVAL '300' month,
       INTERVAL '54-2' year to month,
       INTERVAL ' 11:12:10.1234567' hour to second 
  FROM DUAL;

위 쿼리의 출력은 다음과 같습니다.

+25-00,+54-02,+00 11:12:10.1234567

누가 인터벌 함수에 대한 설명과 함께 이 쿼리가 이 출력을 어떻게 제공하고 있는지 설명해 줄 수 있습니까?

INTERVAL는 함수가 아닙니다. 인터벌 리터럴을 도입하는 키워드로 데이터 유형을 나타냅니다.리터럴과 유사합니다.DATE '2011-05-04'아니면TIMESTAMP '2011-05-04 17:18:19'하고 있습니다.

인터벌 리터럴에 대한 상세 정보
http://docs.oracle.com/cd/E11882_01/server.112/e41084/sql_elements003.htm#SQLRF00221
http://docs.oracle.com/cd/E11882_01/server.112/e41084/expressions009.htm#SQLRF52084

간격 데이터 유형에 대한 세부 정보:
http://docs.oracle.com/cd/E11882_01/server.112/e41084/sql_elements001.htm#i128552

간격은 지정된 날짜에 일, 년, 월, 시, 분, 초를 차감하거나 추가하는 데 사용되는 함수입니다.구간 '300' 월 : 25-0 사유 : 300/12(월)은 25로 몫을 주고 나머지는 0으로 주므로 출력은 25-0이 됩니다.

간격 '54-2' 년~월 : 54-2 사유 : 날짜를 언급하지 않으셨기 때문에 그대로 드립니다.sysdate + interval '54-2'를 dual에서 년 단위로 선택할 경우 출력은 1-12-2066입니다.

sydate : 1-10-2012 그래서 12=66에 54를 더하고 10월에 2개월을 더하면 12월이 됩니다.

마지막 옵션도 마찬가지입니다.

언급URL : https://stackoverflow.com/questions/5879448/interval-function-in-oracle

반응형