timediff-functie

Van toepassing op:check marked yes Databricks SQL check marked yes Databricks Runtime 14.0 en hoger

Retourneert het verschil tussen twee tijdstempels gemeten in units. Deze functie is een synoniem voor de functie timestampdiff.

Syntaxis

timediff(unit, start, end)

unit
 { MICROSECOND |
   MILLISECOND |
   SECOND |
   MINUTE |
   HOUR |
   DAY |
   WEEK |
   MONTH |
   QUARTER |
   YEAR }

Argumenten

  • unit: Een maateenheid.
  • start: Een beginexpressie TIMESTAMP .
  • end: Een eindexpressie TIMESTAMP .

Retourneert

A BIGINT.

Als start het resultaat groter is dan end het resultaat is negatief.

De functie telt hele verstreken eenheden op UTC basis van een DAY getal van 86400 seconden.

Een maand wordt beschouwd als verstreken wanneer de kalendermaand is toegenomen en de kalenderdag en -tijd gelijk of groter zijn aan het begin. Weken, kwartalen en jaren volgen daarvan.

Voorbeelden

-- One second shy of a month elapsed
> SELECT timediff(MONTH, TIMESTAMP'2021-02-28 12:00:00', TIMESTAMP'2021-03-28 11:59:59');
 0

-- One month has passed even though its' not end of the month yet because day and time line up.
> SELECT timediff(MONTH, TIMESTAMP'2021-02-28 12:00:00', TIMESTAMP'2021-03-28 12:00:00');
 1

-- Start is greater than the end
> SELECT timediff(YEAR, DATE'2021-01-01', DATE'1900-03-28');
 -120