La función EXTRACT de PostgreSQL se utiliza para recuperar subcampos específicos, como año, mes, día, hora, etc., de valores de fecha/hora. Es esencial para la manipulación y el análisis de la fecha-hora en las consultas SQL.
Utilización
La función EXTRACTAR es especialmente útil cuando necesitas aislar una parte concreta de un valor de fecha/hora con fines de filtrado, agrupación o visualización. Su sintaxis es sencilla:
En esta sintaxis, field representa la parte de la fecha/hora que quieres extraer (por ejemplo, YEAR, MONTH, DOW, DOY, EPOCH), y source es cualquier expresión que devuelva un valor timestamp, date, interval, o time, no sólo literales.
Este ejemplo recupera el día de la semana, donde el domingo es 0 y el sábado es 6.
5. Utilizar EXTRACT con GROUP BY
SELECTEXTRACT(YEARFROM order_date)AS order_year,COUNT(*)FROM orders
GROUPBY order_year;Con la tecnología de
Este ejemplo agrupa los pedidos por año, demostrando el uso de EXTRACT con GROUP BY.
Consejos y buenas prácticas
La precisión importa. Asegúrate de que source está en el formato correcto de fecha/hora para evitar errores o resultados inesperados.
Combínalo con otras funciones. Utiliza EXTRACT con GROUP BY o ORDER BY para organizar los resultados por intervalos de tiempo.
Ten en cuenta las zonas horarias. Ten en cuenta el contexto de zona horaria de tus datos para garantizar una extracción precisa.
Comprueba si hay valores nulos. Maneja los posibles nulos en los campos fecha/hora utilizando COALESCE o funciones similares para evitar fallos en la consulta. Por ejemplo:
SELECTEXTRACT(YEARFROMCOALESCE(order_date,CURRENT_DATE))AS year;Con la tecnología de
Tipos de devolución. EXTRACT devuelve un valor de doble precisión para todos los campos, excepto cuando la fuente es un intervalo, en cuyo caso devuelve un número entero para campos como YEAR, MONTH, etc.
EXTRACTO vs FECHA_PARTE. Ambas funciones sirven para fines similares, pero DATE_PART es una sintaxis de función más tradicional en PostgreSQL. Elige en función de la convención personal o del proyecto.
La función EXTRACT de PostgreSQL se utiliza para recuperar subcampos específicos, como año, mes, día, hora, etc., de valores de fecha/hora. Es esencial para la manipulación y el análisis de la fecha-hora en las consultas SQL.
Utilización
La función EXTRACTAR es especialmente útil cuando necesitas aislar una parte concreta de un valor de fecha/hora con fines de filtrado, agrupación o visualización. Su sintaxis es sencilla:
En esta sintaxis,
fieldrepresenta la parte de la fecha/hora que quieres extraer (por ejemplo,YEAR,MONTH,DOW,DOY,EPOCH), ysourcees cualquier expresión que devuelva un valortimestamp,date,interval, otime, no sólo literales.Ejemplos
1. Año de extracción
Este ejemplo extrae el año
2023de la fecha especificada.2. Extraer el mes de la fecha actual
Aquí, la función EXTRACT recupera el mes actual a partir de la fecha del sistema.
3. Extraer la hora de la marca de tiempo
Este ejemplo extrae la hora
15de la marca de tiempo dada.4. Extraer el día de la semana
Este ejemplo recupera el día de la semana, donde el domingo es
0y el sábado es6.5. Utilizar EXTRACT con GROUP BY
Este ejemplo agrupa los pedidos por año, demostrando el uso de EXTRACT con
GROUP BY.Consejos y buenas prácticas
sourceestá en el formato correcto de fecha/hora para evitar errores o resultados inesperados.GROUP BYoORDER BYpara organizar los resultados por intervalos de tiempo.COALESCEo funciones similares para evitar fallos en la consulta. Por ejemplo:YEAR,MONTH, etc.DATE_PARTes una sintaxis de función más tradicional en PostgreSQL. Elige en función de la convención personal o del proyecto.