timestampdiff-functie

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 10.4 LTS en hoger

Retourneert het verschil tussen twee tijdstempels gemeten in units.

Syntaxis

timestampdiff(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 .

Retouren

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 timestampdiff(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 timestampdiff(MONTH, TIMESTAMP'2021-02-28 12:00:00', TIMESTAMP'2021-03-28 12:00:00');
 1

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