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í TIMESTAMP výraz.
end: Koncový TIMESTAMP vý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
Na konci tohoto modulu se dozvíte o významu časového měřítka a o tom, jak do modelu přidat výpočty DAX s časovou sadou. Mezi tyto výpočty patří růst od začátku roku, meziroční růst a další.