Sdílet prostřednictvím


Funkce date_part

Platí pro:zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime

Extrahuje část data, časového razítka nebo intervalu.

Syntaxe

date_part(fieldStr, expr)

Argumenty

  • fieldStr: Literál STRING .
  • expr: A DATE, TIMESTAMPnebo INTERVAL výraz.

Návraty

Pokud fieldStr je , 'SECOND'a DECIMAL(8, 6). Ve všech ostatníchpřípadechch INTEGER

Podporované hodnoty field, když je sourceDATE 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 field, pokud je sourceINTERVAL, jsou (nezávisle na velikosti písmen):

  • '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

Funkce date_part je synonymem pro standardní funkci extrakce SQL.

Například date_part('year', CURRENT_DATE) je ekvivalentní extract(YEAR FROM CURRENT_DATE)

Příklady

> 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