Megosztás a következőn keresztül:


A date_part függvény

A következőkre vonatkozik: jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime

Kinyeri a dátum, az időbélyeg vagy az intervallum egy részét.

Syntax

date_part(fieldStr, expr)

Argumentumok

  • fieldStr: Egy STRING literál.
  • expr: A DATE, TIMESTAMPvagy INTERVAL kifejezés.

Válaszok

Ha fieldStr igen 'SECOND', akkor a DECIMAL(8, 6). Minden más esetben egy INTEGER.

A következő támogatott értékek field source:DATE TIMESTAMP

  • 'YEAR', 'Y', 'YEARS', 'YR''YRS': Az év mezője
  • 'YEAROFWEEK': Az ISO 8601 hétszámozási év, amelyben a dátumidő esik. A 2005-01-02 például a 2004- es év 53. hetének része, így az eredmény 2004
  • 'QUARTER', 'QTR': Annak az évnek a negyedéve (1-4), amelyben a dátumidő esik
  • 'MONTH', 'MON', 'MONS': 'MONTHS'A hónap mező (1 – 12)
  • 'WEEK', , 'W''WEEKS': Az ISO 8601 hét-hét alapú év száma. A hét úgy tekinthető, hogy hétfőn kezdődik, és az 1. hét az első hét >3 nappal. Az ISO hétszámozási rendszerében lehetséges, hogy a január eleje és a január eleje az előző év 52. vagy 53. hetének része lesz, a december végi dátumok pedig a következő év első hetének részei lesznek. A 2005-01-02 például a 2004-es év 53. hetének része, míg a 2012-12-31 2013 első hetének része
  • 'DAY', , 'D''DAYS': A hónap napja mező (1 – 31)
  • 'DAYOFWEEK', 'DOW': A hét napja a vasárnap(1) és szombat (7) dátumidő esetén
  • 'DAYOFWEEK_ISO', 'DOW_ISO': A hét ISO 8601-alapú napja a hétfő(1) és a vasárnap (7) dátumidőhöz
  • 'DOY': Az év napja (1 - 365/366)
  • 'HOUR', 'H', 'HOURS', 'HR''HRS': Az óra mező (0 – 23)
  • 'MINUTE', 'M', 'MIN', 'MINS''MINUTES': A perc mező (0 – 59)
  • 'SECOND', 'S', 'SEC', 'SECONDS''SECS': A másodperc mező, beleértve a törtrészeket is

A mikor source INTERVAL támogatott értékei field (a kis- és nagybetűk nem érzékenek):

  • 'YEAR', 'Y', 'YEARS', 'YR''YRS': Az összes hónap / 12
  • 'MONTH', 'MON', 'MONS': 'MONTHS'Az összes hónap % 12
  • 'DAY', , 'D''DAYS': Az intervallum napjai
  • 'HOUR', 'H', 'HOURS', 'HR''HRS': A mikroszekundumok hány órát tartalmaznak
  • 'MINUTE', 'M', 'MIN', 'MINS''MINUTES': Hány perc maradt a mikroszekundumoktól órákig
  • 'SECOND', 'S', 'SEC', 'SECONDS''SECS': Hány másodperc alatt maradt a törtrész a mikroszekundumtól számított órák és percek elteltével

A date_part függvény az SQL Standard extract függvény szinonimája.

Például date_part('year', CURRENT_DATE) egyenértékű a extract(YEAR FROM CURRENT_DATE)

Példák

> SELECT date_part('YEAR', TIMESTAMP'2019-08-12 01:00:00.123456');
 2019

> SELECT date_part('Week', TIMESTAMP'2019-08-12 01:00:00.123456');
 33

> SELECT date_part('day', DATE'2019-08-12');
 224

> SELECT date_part('SECONDS', TIMESTAMP'2019-10-01 00:00:01.000001');
 1.000001

> SELECT date_part('Months', INTERVAL '2-11' YEAR TO MONTH);
 11

> SELECT date_part('seconds', INTERVAL '5:00:30.001' HOUR TO SECOND);
 30.001000