Funkce extract
Platí pro: Databricks SQL
Databricks Runtime
Vrátí field
hodnotu source
.
Syntaxe
extract(field FROM source)
Argumenty
-
field
: Klíčové slovo, které vybere, která částsource
by se měla extrahovat. -
source
: ADATE
,TIMESTAMP
neboINTERVAL
výraz.
Návraty
Pokud field
je , SECOND
a DECIMAL(8, 6)
.
Ve všech ostatníchpřípadechch INTEGER
Podporované valuesfield
, pokud je source
DATE
nebo TIMESTAMP
:
-
YEAR
,Y
,YEARS
, ,YR
YRS
: Pole rok -
YEAROFWEEK
: Iso 8601 week-numbering year that the datetime falls in. Například 2005-01-02 je součástí 53. týdne roku 2004, takže výsledek je 2004. -
QUARTER
,QTR
: Čtvrtletí (1 –4) roku, ve které spadá datum a čas -
MONTH
,MON
, ,MONS
MONTHS
: Pole měsíce (1 – 12) -
WEEK
,W
,WEEKS
: Číslo iso 8601 týden-týden-založené-na roce. Týden se považuje za začátek v pondělí a týden 1 je první týden se >3 dny. V systému číslování týdnů ISO je možné, aby data počátku ledna byla součástí 52. nebo 53. týdne předchozího roku a aby data konce prosince byla součástí prvního týdne příštího roku. Například 2005-01-02 je součástí 53. týdne roku 2004, zatímco 2012-12-31 je součástí prvního týdne roku 2013. -
DAY
,D
:DAYS
Den v měsíci (1 - 31) -
DAYOFWEEK
,DOW
: Den v týdnu pro datum a čas jako neděle(1) až sobota(7) -
DAYOFWEEK_ISO
,DOW_ISO
: iso 8601 na základě dne v týdnu pro datum a čas jako pondělí(1) až neděle(7) -
DOY
: Den v roce (1 – 365/366) -
HOUR
,H
,HOURS
, ,HR
HRS
: Pole hodin (0 – 23) -
MINUTE
,M
,MIN
, ,MINS
MINUTES
: Pole minut (0 – 59) -
SECOND
,S
,SEC
, ,SECONDS
SECS
: Pole sekund, včetně desetinné části
Podporované hodnoty values v kontextu field
, když je source
INTERVAL
(nerozlišují malá a velká písmena):
-
YEAR
,Y
,YEARS
, ,YR
:YRS
Celkový počet měsíců / 12 -
MONTH
,MON
, ,MONS
MONTHS
: Celkový počet měsíců % 12 -
DAY
, ,D
DAYS
: Část intervalu dnů -
HOUR
,H
,HOURS
,HR
, :HRS
Kolik hodin mikrosekundy obsahuje -
MINUTE
,M
,MIN
,MINS
, :MINUTES
Kolik minut zbývá po uplynutí hodin od mikrosekund -
SECOND
,S
,SEC
, ,SECONDS
SECS
: Kolik sekund s zlomky zbývá po uplynutí hodin a minut od mikrosekund
Pokud chcete vrátit zkratku se třemi písmeny pro den v týdnu, použijte funkci název dne.
Příklady
> 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
Související funkce
- date_part
- funkce názvu dne
- dayofweek – funkce
- dayofmonth
- dayofyear – funkce