extract
-functie
Van toepassing op: Databricks SQL Databricks Runtime
Retourneert field
source
.
Syntaxis
extract(field FROM source)
Argumenten
-
field
: Een trefwoord dat selecteert welk deel moetsource
worden geëxtraheerd. -
source
: ADATE
,TIMESTAMP
ofINTERVAL
expressie.
Retouren
Als field
dat het is SECOND
, een DECIMAL(8, 6)
.
In alle andere gevallen, een INTEGER
.
Ondersteund: values van field
wanneer source
DATE
of TIMESTAMP
is.
-
YEAR
, ,Y
YEARS
, ,YR
,YRS
: Het jaarveld -
YEAROFWEEK
: Het ISO 8601 weeknummeringsjaar waarin de datum/tijd valt. 2005-01-02 maakt bijvoorbeeld deel uit van de 53e week van het jaar 2004, dus het resultaat is 2004 -
QUARTER
, :QTR
Het kwartaal (1 - 4) van het jaar waarin de datum/tijd valt -
MONTH
, ,MON
MONS
,MONTHS
: Het maandveld (1 - 12) -
WEEK
, ,W
:WEEKS
Het aantal ISO 8601 week-van-week-gebaseerd jaar. Een week wordt beschouwd als beginnen op maandag en week 1 is de eerste week met >3 dagen. In het ISO-weeknummeringssysteem is het mogelijk dat datums van begin januari deel uitmaken van de 52e of 53e week van het vorige jaar, en dat datums eind december deel uitmaken van de eerste week van het volgende jaar. 2005-01-02 maakt bijvoorbeeld deel uit van de 53e week van het jaar 2004, terwijl 2012-12-31 deel uitmaakt van de eerste week van 2013 -
DAY
, ,D
DAYS
: De dag van het maandveld (1 - 31) -
DAYOFWEEK
,DOW
: De dag van de week voor datum/tijd als zondag(1) tot en met zaterdag(7) -
DAYOFWEEK_ISO
, :DOW_ISO
ISO 8601 gebaseerde dag van de week voor datum/tijd als maandag(1) tot zondag(7) -
DOY
: De dag van het jaar (1 - 365/366) -
HOUR
,H
,HOURS
,HR
HRS
: Het uurveld (0 - 23) -
MINUTE
,M
,MIN
,MINS
:MINUTES
Het veld minuten (0 - 59) -
SECOND
,S
,SEC
, ,SECONDS
, :SECS
Het veld seconden, inclusief breukdelen
Ondersteunde values van field
als source
INTERVAL
is (niet hoofdlettergevoelig):
-
YEAR
,Y
,YEARS
,YR
YRS
: Het totale aantal maanden / 12 -
MONTH
, , ,MON
:MONS
MONTHS
Het totale aantal maanden % 12 -
DAY
, ,D
:DAYS
Het dagengedeelte van het interval -
HOUR
, ,H
HOURS
,HR
, ,HRS
: Hoeveel uur de microseconden bevatten -
MINUTE
,M
,MIN
, ,MINS
,MINUTES
: Hoeveel minuten er nog zijn na uren van microseconden -
SECOND
,S
,SEC
, ,SECONDS
,SECS
: Hoeveel seconden met breuken na uren en minuten van microseconden
Als u de acroniem van drie letters voor de dag van de week wilt retourneren, gebruikt u de dagnaam functie.
Voorbeelden
> SELECT extract(YEAR FROM TIMESTAMP '2019-08-12 01:00:00.123456');
2019
> SELECT extract(week FROM TIMESTAMP'2019-08-12 01:00:00.123456');
33
> SELECT extract(DAY FROM DATE'2019-08-12');
12
> SELECT extract(SECONDS FROM TIMESTAMP'2019-10-01 00:00:01.000001');
1.000001
> SELECT extract(MONTHS FROM INTERVAL '2-11' YEAR TO MONTH);
11
> SELECT extract(SECONDS FROM INTERVAL '5:00:30.001' HOUR TO SECOND);
30.001000