Funktionen date_trunc
Gäller för: Databricks SQL Databricks Runtime
Returnerar tidsstämpeln trunkerad till den enhet som anges i unit
.
Syntax
date_trunc(unit, expr)
Argument
unit
: EnSTRING
literal.expr
: ADATE
,TIMESTAMP
, ellerSTRING
med ett giltigt tidsstämpelformat.
Returer
En TIMESTAMP
.
Kommentar
Giltiga enheter för unit
är (skiftlägesokänsliga):
'YEAR'
,'YYYY'
,'YY'
: trunkera till det första datumet på året somexpr
infaller, tidsdelen blir noll'QUARTER'
: trunkera till det första datumet i kvartalet somexpr
infaller, tidsdelen blir noll'MONTH'
, ,'MM'
'MON'
: trunkera till det första datumet i månaden somexpr
infaller, tidsdelen blir noll'WEEK'
: trunkera till måndagen i veckan somexpr
faller i, tidsdelen kommer att vara noll ut'DAY'
,'DD'
: nollställ tidsdelen'HOUR'
: nolla minut och sekund med bråkdel'MINUTE'
: nolla ut den andra med bråkdel'SECOND'
: nollställ den andra bråkdelen'MILLISECOND'
: nollställ mikrosekunderna'MICROSECOND'
: allt finns kvar
Om inte unit
är välformulerad returnerar NULL
funktionen .
Exempel
> 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