date_part Funktion

Gäller för:check markerad ja Databricks SQL-kontroll markerad som ja Databricks Runtime

Extraherar en del av datum, tidsstämpel eller intervall.

Syntax

date_part(fieldStr, expr)

Argument

  • fieldStr: En STRING literal.
  • expr: Ett DATE- eller TIMESTAMPINTERVAL -uttryck.

Returnerar

Om fieldStr är 'SECOND', en DECIMAL(8, 6). I alla andra fall, en INTEGER.

Värden som stöds för field när source är DATE eller TIMESTAMP:

  • 'YEAR', 'Y', 'YEARS', 'YR', 'YRS': Fältet år
  • 'YEAROFWEEK': Det ISO 8601-veckonumreringsår som datetime infaller i. Till exempel är 2005-01-02 en del av den 53:e veckan år 2004, så resultatet är 2004
  • 'QUARTER', 'QTR': Kvartalet (1–4) för året då datetime infaller under
  • 'MONTH', 'MON', 'MONS', 'MONTHS': Månadsfältet (1–12)
  • 'WEEK', 'W', 'WEEKS': Antalet ISO 8601 veckobaserade år. En vecka anses starta på en måndag och vecka 1 är den första veckan med >3 dagar. I ISO-numreringssystemet för veckor är det möjligt att datum i början av januari ingår i den 52:a eller 53:e veckan föregående år och att datumen i slutet av december ingår i den första veckan nästa år. Till exempel är 2005-01-02 en del av den 53:e veckan på året 2004, medan 2012-12-31 är en del av den första veckan 2013
  • 'DAY', 'D', 'DAYS': Fältet day of the month (1–31)
  • 'DAYOFWEEK', 'DOW': Veckodagen för datetime som söndag(1) till lördag(7)
  • 'DAYOFWEEK_ISO', 'DOW_ISO': ISO 8601-baserad veckodag för datetime som måndag(1) till söndag(7)
  • 'DOY': Dagen på året (1-365/366)
  • 'HOUR', 'H', 'HOURS', 'HR', 'HRS': Fältet timme (0–23)
  • 'MINUTE', 'M', 'MIN', 'MINS', 'MINUTES': Fältet minuter (0–59)
  • 'SECOND', 'S', 'SEC', 'SECONDS', 'SECS': Fältet sekunder, inklusive bråkdelar

Värden som stöds för field när source är INTERVAL är (skiftlägesokänsliga):

  • 'YEAR', 'Y', 'YEARS', 'YR', 'YRS': Totalt antal månader/12
  • 'MONTH', 'MON', 'MONS', 'MONTHS': De totala månaderna % 12
  • 'DAY', 'D', 'DAYS': Dagar som är en del av intervallet
  • 'HOUR', 'H', 'HOURS', 'HR', 'HRS': Hur många timmar mikrosekunderna innehåller
  • 'MINUTE', 'M', 'MIN', 'MINS', 'MINUTES': Hur många minuter kvar efter att ha tagit timmar från mikrosekunder
  • 'SECOND', 'S', 'SEC', 'SECONDS', 'SECS': Hur många sekunder med bråk kvar efter att ha tagit timmar och minuter från mikrosekunder

Funktionen date_part är en synonym för SQL-standardextraheringsfunktionen .

Är till exempel date_part('year', CURRENT_DATE) likvärdigt med extract(YEAR FROM CURRENT_DATE)

Exempel

> 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