Funzione date_trunc
Si applica a: Databricks SQL
Databricks Runtime
Restituisce il timestamp troncato all'unità specificata in unit
.
Sintassi
date_trunc(unit, expr)
Argomenti
unit
: valoreSTRING
letterale.expr
: oggettoDATE
,TIMESTAMP
oSTRING
con un formato timestamp valido.
Valori restituiti
Un oggetto TIMESTAMP
.
Note
Le unità valide per unit
sono (senza distinzione tra maiuscole e minuscole):
'YEAR'
,'YYYY'
,'YY'
: tronca alla prima data dell'anno in cui rientraexpr
, la parte temporale sarà zero out'QUARTER'
: tronca alla prima data del trimestre in cui cadeexpr
, la parte temporale sarà zero out'MONTH'
,'MM'
,'MON'
: tronca alla prima data del mese in cui rientraexpr
, la parte temporale sarà zero out'WEEK'
: tronca al lunedì della settimana in cui cadeexpr
, la parte temporale sarà zero out'DAY'
,'DD'
: zero out la parte relativa al tempo'HOUR'
: zero out il minuto e il secondo con parte frazionaria'MINUTE'
: zero il secondo con parte frazionaria'SECOND'
: zero la seconda parte frazionaria'MILLISECOND'
: zero i microsecondi'MICROSECOND'
: tutto rimane
Se l'oggetto unit
non è ben formato, la funzione restituisce NULL
.
Esempi
> SELECT date_trunc('YEAR', '2015-03-05T09:32:05.359');
2015-01-01 00:00:00
> SELECT date_trunc('MM', '2015-03-05T09:32:05.359');
2015-03-01 00:00:00
> SELECT date_trunc('DD', '2015-03-05T09:32:05.359');
2015-03-05 00:00:00
> SELECT date_trunc('HOUR', '2015-03-05T09:32:05.359');
2015-03-05 09:00:00
> SELECT date_trunc('MILLISECOND', '2015-03-05T09:32:05.123456');
2015-03-05 09:32:05.123
-- Not a recognised unit
> SELECT date_trunc('MS', '2015-03-05T09:32:05.123456');
NULL