Delen via


date_part-functie

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime

Extraheert een deel van de datum, tijdstempel of interval.

Syntaxis

date_part(fieldStr, expr)

Argumenten

  • fieldStr: Een STRING letterlijke.
  • expr: A DATE, TIMESTAMPof INTERVAL expressie.

Retouren

Als fieldStr dat het is 'SECOND', een DECIMAL(8, 6). In alle andere gevallen, een INTEGER.

Ondersteunde waarden van field wanneer source is DATE of TIMESTAMP:

  • 'YEAR', , 'Y''YEARS', , 'YR', 'YRS': Het jaarveld
  • 'YEAROFWEEK': Het ISO 8601 weeknummeringsjaar waarin de datum/tijd valt. 2005-01-02 maakt bijvoorbeeld deel uit van de 53e week van het jaar 2004, dus het resultaat is 2004
  • 'QUARTER', : 'QTR'Het kwartaal (1 - 4) van het jaar waarin de datum/tijd valt
  • 'MONTH', , 'MON''MONS', 'MONTHS': Het maandveld (1 - 12)
  • 'WEEK', , 'W': 'WEEKS'Het aantal ISO 8601 week-van-week-gebaseerd jaar. Een week wordt beschouwd als beginnen op maandag en week 1 is de eerste week met >3 dagen. In het ISO-weeknummeringssysteem is het mogelijk dat datums van begin januari deel uitmaken van de 52e of 53e week van het vorige jaar, en dat datums eind december deel uitmaken van de eerste week van het volgende jaar. 2005-01-02 maakt bijvoorbeeld deel uit van de 53e week van het jaar 2004, terwijl 2012-12-31 deel uitmaakt van de eerste week van 2013
  • 'DAY', , 'D''DAYS': De dag van het maandveld (1 - 31)
  • 'DAYOFWEEK', 'DOW': De dag van de week voor datum/tijd als zondag(1) tot en met zaterdag(7)
  • 'DAYOFWEEK_ISO', : 'DOW_ISO'ISO 8601 gebaseerde dag van de week voor datum/tijd als maandag(1) tot zondag(7)
  • 'DOY': De dag van het jaar (1 - 365/366)
  • 'HOUR', 'H', 'HOURS', 'HR''HRS': Het uurveld (0 - 23)
  • 'MINUTE', 'M', 'MIN', 'MINS': 'MINUTES'Het veld minuten (0 - 59)
  • 'SECOND', 'S', 'SEC', , 'SECONDS', : 'SECS'Het veld seconden, inclusief breukdelen

Ondersteunde waarden van field wanneer sourceINTERVAL is, zijn (niet-hoofdlettergevoelig):

  • 'YEAR', 'Y', 'YEARS', 'YR''YRS': Het totale aantal maanden / 12
  • 'MONTH', , , 'MON': 'MONS''MONTHS'Het totale aantal maanden % 12
  • 'DAY', , 'D': 'DAYS'Het dagengedeelte van het interval
  • 'HOUR', , 'H''HOURS', 'HR', , 'HRS': Hoeveel uur de microseconden bevatten
  • 'MINUTE', 'M', 'MIN', , 'MINS', 'MINUTES': Hoeveel minuten er nog zijn na uren van microseconden
  • 'SECOND', 'S', 'SEC', , 'SECONDS', 'SECS': Hoeveel seconden met breuken na uren en minuten van microseconden

De date_part functie is een synoniem voor de SQL-standaardextractfunctie.

Is bijvoorbeeld date_part('year', CURRENT_DATE) gelijk aan extract(YEAR FROM CURRENT_DATE)

Voorbeelden

> 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