Funkcja extract
Dotyczy: Databricks SQL Databricks Runtime
Zwraca wartość field
source
.
Składnia
extract(field FROM source)
Argumenty
-
field
: słowo kluczowe, które wybiera,source
która część powinna zostać wyodrębniona. -
source
: wyrażenieDATE
,TIMESTAMP
lubINTERVAL
.
Zwraca
Jeśli field
element to SECOND
, a DECIMAL(8, 6)
.
We wszystkich innych przypadkach element INTEGER
.
Obsługiwane values z field
, gdy source
jest DATE
lub TIMESTAMP
-
YEAR
, ,Y
,YEARS
,YR
YRS
: pole roku -
YEAROFWEEK
: rok numerowania tygodniowego ISO 8601, w przypadku którego przypada data/godzina. Na przykład 2005-01-02 jest częścią 53 tygodnia roku 2004, więc wynik to 2004 -
QUARTER
,QTR
: kwartał (1– 4) roku, w ramach którego przypada data/godzina -
MONTH
, ,MON
,MONS
MONTHS
: pole miesiąca (1–12) -
WEEK
, ,W
WEEKS
: liczba tygodniowo-tygodniowego roku ISO 8601. Tydzień jest uważany za rozpoczęcie w poniedziałek i tydzień 1 jest pierwszym tygodniem z >3 dni. W systemie numerowania tygodni ISO istnieje możliwość, aby daty z początku stycznia były częścią 52 lub 53 tygodnia poprzedniego roku, a pod koniec grudnia daty będą częścią pierwszego tygodnia następnego roku. Na przykład 2005-01-02 jest częścią 53 tygodnia roku 2004, podczas gdy 2012-12-31 jest częścią pierwszego tygodnia 2013 r. -
DAY
, ,D
DAYS
: dzień pola miesiąca (1 – 31) -
DAYOFWEEK
,DOW
: dzień tygodnia dla daty/godziny jako niedziela(1) do soboty (7) -
DAYOFWEEK_ISO
,DOW_ISO
: iso 8601 na podstawie dnia tygodnia dla daty/godziny w poniedziałek(1) do niedzieli(7) -
DOY
: dzień roku (1 – 365/366) -
HOUR
, ,H
,HOURS
,HR
HRS
: pole godziny (od 0 do 23) -
MINUTE
, ,M
,MIN
,MINS
MINUTES
: pole minut (od 0 do 59) -
SECOND
, ,S
,SEC
,SECONDS
SECS
: pole sekund, w tym części ułamkowe
Obsługiwane wartości values z field
, gdy source
jest INTERVAL
(bez uwzględniania wielkości liter):
-
YEAR
,Y
, ,YEARS
,YR
YRS
: łączna liczba miesięcy / 12 -
MONTH
, ,MON
,MONS
MONTHS
: łączna liczba miesięcy % 12 -
DAY
, ,D
:DAYS
część dni interwału -
HOUR
, ,H
,HOURS
,HR
HRS
: ile godzin zawiera mikrosekundy -
MINUTE
, ,M
,MIN
,MINS
MINUTES
: ile minut pozostało po kilku godzinach od mikrosekund -
SECOND
, ,S
,SEC
,SECONDS
SECS
: ile sekund z ułamkami pozostało po godzinach i minutach od mikrosekund
Aby zwrócić trzyliterowy akronim dnia tygodnia, użyj funkcji dayname.
Przykłady
> 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
Funkcje pokrewne
- date_part, funkcja
- funkcja dayname
- dayofweek, funkcja
- dayofmonth, funkcja
- dayofyear, funkcja