extract Functie

Van toepassing op:controleren met ja Databricks SQL-controle gemarkeerd als ja Databricks Runtime

Retourneert field van source.

Syntaxis

extract(field FROM source)

Argumenten

  • field: Een trefwoord waarmee wordt geselecteerd welk deel van source moet worden geĂ«xtraheerd.
  • source: Een DATE, TIMESTAMPof-expressie INTERVAL .

Retourneert

Als field is SECOND, een DECIMAL(8, 6). In alle andere gevallen wordt een INTEGER.

Ondersteunde waarden van field wanneer source is DATE of TIMESTAMP:

  • YEAR, Y, YEARS, YR, : YRShet veld Jaar
  • 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: MONTHSHet maandveld (1 - 12)
  • WEEK, W, WEEKS: Het nummer van de ISO 8601 week-van-week-gebaseerd-jaar. Een week wordt beschouwd als start op een 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 van 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: Het veld dag van de maand (1 - 31)
  • DAYOFWEEK, DOW: De dag van de week voor datum/tijd als zondag(1) tot zaterdag(7)
  • DAYOFWEEK_ISO, DOW_ISO: OP ISO 8601 gebaseerde dag van de week voor datum/tijd van maandag(1) tot zondag(7)
  • DOY: De dag van het jaar (1 - 365/366)
  • HOUR, H, HOURS, HR, : HRSHet uurveld (0 - 23)
  • MINUTE, M, MIN, MINS, : MINUTEShet minutenveld (0 - 59)
  • SECOND, S, SEC, SECONDS, : SECShet secondenveld, inclusief breukonderdelen

Ondersteunde waarden van field wanneer source zijn INTERVAL (niet hoofdlettergevoelig):

  • YEAR, Y, YEARS, YR, : YRShet totaal aantal maanden / 12
  • MONTH, MON, MONS, MONTHS: totaal maanden % 12
  • DAY, D, DAYS: het dagengedeelte van het interval
  • HOUR, H, HOURS, HR, : HRShoeveel uur de microseconden bevat
  • MINUTE, M, MIN, MINS, MINUTES: hoeveel minuten er nog over zijn na uren van microseconden
  • SECOND, S, SEC, SECONDS, : SECShoeveel seconden met breuken nog over na het nemen van uren en minuten van microseconden

Voorbeelden

> 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