Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Función
Se aplica a:
Databricks SQL
Databricks Runtime
Extrae una parte de la fecha, marca de tiempo o intervalo.
Sintaxis
date_part(fieldStr, expr)
Argumentos
-
fieldStr: UnSTRINGliteral. -
expr: Una expresiónDATE,TIMESTAMPoINTERVAL.
Devoluciones
Si fieldStr es 'SECOND', entonces DECIMAL(8, 6).
En todos los demás casos, un INTEGER.
Valores admitidos de field cuando source es DATE o TIMESTAMP:
-
'YEAR','Y','YEARS','YR','YRS': el campo de año -
'YEAROFWEEK': el año de numeración de la semana ISO 8601 al que pertenece el datetime. Por ejemplo, el 2 de enero de 2005 forma parte de la semana 53 del año 2004, por lo que el resultado es 2004 -
'QUARTER','QTR': el trimestre (de 1 a 4) del año al que pertenece el datetime -
'MONTH','MON','MONS','MONTHS': el campo mes (1 - 12) -
'WEEK','W','WEEKS': el número de la semana ISO 8601 del año basado en semanas. Se considera que la semana comienza el lunes y la semana 1 es la primera semana con >3 días. En el sistema de numeración de semanas ISO, es posible que las fechas de principios de enero formen parte de la semana 52 o 53 del año anterior y que las fechas de finales de diciembre formen parte de la primera semana del año siguiente. Por ejemplo, el 2 de enero de 2005 forma parte de la semana 53 del año 2004, mientras que el 31 de diciembre de 2012 forma parte de la primera semana de 2013 -
'DAY','D','DAYS': el día del campo mes (1 a 31) -
'DAYOFWEEK','DOW': el día de la semana para datetime de domingo (1) a sábado (7) -
'DAYOFWEEK_ISO','DOW_ISO': día de la semana basado en ISO 8601 para fecha y hora desde lunes (1) hasta domingo (7) -
'DOY': el día del año (1 - 365/366) -
'HOUR','H','HOURS','HR','HRS': el campo de hora (0 a 23) -
'MINUTE','M','MIN','MINS','MINUTES': el campo de minutos (0 - 59) -
'SECOND','S','SEC','SECONDS','SECS': el campo de segundos, incluidas las partes decimales
Valores admitidos de field cuando source es INTERVAL (sin distinción entre mayúsculas y minúsculas):
-
'YEAR','Y','YEARS','YR','YRS': el total de meses/12 -
'MONTH','MON','MONS','MONTHS': el total de meses % 12 -
'DAY','D','DAYS': la parte del intervalo que corresponde a los días -
'HOUR','H','HOURS','HR','HRS': cuántas horas contiene el microsegundo -
'MINUTE','M','MIN','MINS','MINUTES': cuántos minutos quedan después de extraer las horas de los microsegundos -
'SECOND','S','SEC','SECONDS','SECS': cuántos segundos con decimales quedan después de extraer las horas y los minutos de los microsegundos
La función date_part es un sinónimo de la función de extracción estándar de SQL.
Por ejemplo, date_part('year', CURRENT_DATE) es equivalente a extract(YEAR FROM CURRENT_DATE)
Ejemplos
> 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');
12
> 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