Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Funkce
Platí pro:
Databricks SQL
Databricks Runtime 10.4 LTS a vyšší
Vrátí rozdíl mezi dvěma časovými razítky měřenými ve units.
Syntaxe
timestampdiff(unit, start, end)
unit
{ MICROSECOND |
MILLISECOND |
SECOND |
MINUTE |
HOUR |
DAY |
WEEK |
MONTH |
QUARTER |
YEAR }
Argumenty
-
unit: Měrná jednotka. -
start: PočátečníTIMESTAMPvýraz. -
end: KoncovýTIMESTAMPvýraz.
Návraty
Úloha BIGINT.
Pokud start je výsledek větší než end výsledek záporný.
Funkce počítá celé uplynulé jednotky na UTCDAY základě hodnoty 86400 sekund.
Jeden měsíc se považuje za uplynulý, když se kalendářní měsíc zvýšil a kalendářní den a čas se rovná začátku nebo vyšší. Od toho následují týdny, čtvrtiny a roky.
Příklady
-- 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