En PostgreSQL, el date_part()
La función recupera subcampos como el año, mes, hora o minuto, parte de un valor de fecha/hora.
Es equivalente a extract()
función, aunque con una sintaxis ligeramente diferente.
Sintaxis
La función tiene la siguiente sintaxis:
date_part('field', source)
Dónde:
'field'
es para la parte de la fecha que desea recuperar. Este parámetro debe ser un valor de cadena, no un nombre. Consulte a continuación una lista de nombres de campo válidos.source
es una marca de tiempo o un intervalo de la que desea recuperar la parte de la fecha.
Ejemplo:marca de tiempo
Aquí hay un ejemplo básico para demostrar cómo recuperar un campo de una marca de tiempo .
SELECT date_part('hour', timestamp '2020-09-16 22:33:15');
Resultado:
22
Este ejemplo recupera el campo de hora de una marca de tiempo valor.
Aquí está de nuevo, pero esta vez recupero el campo del año.
SELECT date_part('year', timestamp '2020-09-16 22:33:15');
Resultado:
2020
Ejemplo:Intervalo
En este ejemplo, recupero una parte de fecha de un intervalo valor.
SELECT date_part('hour', interval '5 hours 30 minutes');
Resultado:
5
En el siguiente ejemplo, la función devuelve correctamente la cantidad de horas, aunque solo proporcione la cantidad de minutos.
SELECT date_part('hour', interval '120 minutes');
Resultado:
2
Sin embargo, no cuentes con esta técnica. Es posible que descubras que no siempre obtienes el resultado que esperas.
Por ejemplo:
SELECT date_part('hour', interval '100 minutes');
Resultado:
1
Y otro:
SELECT date_part('minute', interval '2 hours');
Resultado:
0
Nombres de campo
El primer argumento puede ser cualquiera de los siguientes:
century
day
decade
dow
doy
epoch
hour
isodow
isoyear
microseconds
millennium
milliseconds
minute
month
quarter
second
timezone
timezone_hour
timezone_minute
week
year