datediff
(timestamp) funzione
Si applica a: Databricks SQL Databricks Runtime 10.4 LTS e versioni successive
Restituisce la differenza tra due timestamp misurati in unit
s. Questa funzione è un sinonimo della funzione timestampdiff.
Sintassi
datediff(unit, start, end)
unit
{ MICROSECOND |
MILLISECOND |
SECOND |
MINUTE |
HOUR |
DAY |
WEEK |
MONTH |
QUARTER |
YEAR }
Argomenti
unit
: unità di misura.start
: espressione inizialeTIMESTAMP
.end
: espressione finaleTIMESTAMP
.
Valori restituiti
Un oggetto BIGINT
.
Se start
è maggiore del end
risultato è negativo.
La funzione conta intere unità trascorse in base a UTC
un valore DAY
di 86400 secondi.
Un mese viene considerato trascorso quando il mese di calendario è aumentato e il giorno e l'ora del calendario è uguale o superiore all'inizio. Settimane, trimestri e anni seguono da questo.
Esempi
-- One second shy of a month elapsed
> SELECT datediff(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 datediff(MONTH, TIMESTAMP'2021-02-28 12:00:00', TIMESTAMP'2021-03-28 12:00:00');
1
-- Start is greater than the end
> SELECT datediff(YEAR, DATE'2021-01-01', DATE'1900-03-28');
-120