TIMESTAMPDIFF

TIMESTAMPDIFF

TIMESTAMPDIFF() 함수는 지정한 날짜/시간 단위(date or time part)를 기준으로 두 날짜, 시간 또는 타임스탬프 표현식 사이의 차이를 계산해요. 이 함수는 세 번째 인자에서 두 번째 인자를 뺀 결과를 반환해요.

DATEDIFF의 대안이에요.

출처: Snowflake SQL Reference

본문

문법

TIMESTAMPDIFF( <date_or_time_part> , <date_or_time_expr1> , <date_or_time_expr2> )

인자

  • date_or_time_part — 차이를 계산할 단위(예: 초, 일)예요.
  • date_or_time_expr1 — 첫 번째 날짜/시간 표현식이에요.
  • date_or_time_expr2 — 두 번째 날짜/시간 표현식이에요.

반환

date_or_time_expr2와 date_or_time_expr1 사이의 단위(초, 일 등) 차이를 나타내는 정수를 반환해요.

사용 메모

  • 출력 값은 음수일 수 있어요. 예: -12일.
  • 이 함수는 연, 분기, 월, 주, 일, 시, 분, 초, 밀리초, 마이크로초, 나노초 단위를 지원해요.
  • date_or_time_part가 week(또는 그 변형)이면 출력은 WEEK_START 세션 파라미터로 제어돼요. 예제를 포함한 자세한 내용은 달력 주와 평일을 참고하세요.
  • 차이를 계산하는 데 사용하는 단위(예: month)가 DATE, TIME 또는 TIMESTAMP 필드의 어떤 부분이 평가되는지를 결정해요. 따라서 단위가 결과의 정밀도를 결정해요. 더 작은 단위는 사용되지 않으므로 값은 반올림되지 않아요. 예를 들어, 2021년 1월 1일과 2021년 2월 28일 사이의 차이가 한 달보다 두 달에 더 가까운데도 다음은 한 달을 반환해요: DATEDIFF(month, '2021-01-01'::DATE, '2021-02-28'::DATE)

DATE 값의 경우:

TIME 값의 경우:

TIMESTAMP 값의 경우:

규칙은 위의 DATE와 TIME 데이터 타입 규칙과 일치해요. 지정된 단위와 그보다 큰 단위만 사용돼요.

예제

예제는 DATEDIFF를 참고하세요. (DATEDIFF, TIMEDIFF, TIMESTAMPDIFF는 모두 같은 기본 형식을 사용해요.)

더 알아보기