Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Funkce
Platí pro:
Databricks SQL
Databricks Runtime
Vrátí field hodnotu source.
Poznámka:
Když se extrahují pole z TIMESTAMP (TIMESTAMP_LTZ), výsledek je založen na časovém pásmu relace.
Syntaxe
extract(field FROM source)
Argumenty
-
field: Klíčové slovo, které vybere, která částsourceby se měla extrahovat. -
source:DATE,TIMESTAMP,TIMESTAMP_NTZneboINTERVALvýraz.
Návraty
Pokud je field, SECOND a DECIMAL(8, 6).
Ve všech ostatních případech INTEGER.
Podporované hodnoty field, když je sourceDATE nebo TIMESTAMP:
-
YEAR,Y,YEARS, ,YRYRS: Pole rok -
YEAROFWEEK: Rok číslování týdnů podle ISO 8601, do kterého datum a čas spadají. 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ém spadá datum a čas -
MONTH,MON,MONS,MONTHS: Pole měsíce (1 – 12) -
WEEK,W,WEEKS: Číslo týdne podle roku založeného na týdnech podle normy ISO 8601. 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:DAYSDen v měsíci (1 - 31) -
DAYOFWEEK,DOW: Den v týdnu, pro datum jako neděle(1) až sobota(7) -
DAYOFWEEK_ISO,DOW_ISO: podle standardu ISO 8601 den v týdnu pro datum a čas od pondělí(1) do neděle(7) -
DOY: Den v roce (1 – 365/366) -
HOUR,H,HOURS, ,HRHRS: Pole hodin (0 – 23) -
MINUTE,M,MIN, ,MINSMINUTES: Pole minut (0 – 59) -
SECOND,S,SEC,SECONDS,SECS: Pole sekund, včetně desetinné části
Podporované hodnoty field, pokud je sourceINTERVAL, jsou (nezávisle na velikosti písmen):
-
YEAR,Y,YEARS, ,YR:YRSCelkový počet měsíců / 12 -
MONTH,MON, ,MONSMONTHS: Celkový počet měsíců % 12 -
DAY,D,DAYS: Dny jako část intervalu -
HOUR,H,HOURS,HR, :HRSKolik hodin mikrosekundy obsahuje -
MINUTE,M,MIN,MINS,MINUTES: Kolik minut zbývá, když odečteme hodiny od mikrosekund -
SECOND,S,SEC,SECONDS,SECS: Kolik sekund se zlomky zbývá po odečtení 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