Función LOCALTIMESTAMP en PostgreSQL

La función LOCALTIMESTAMP en PostgreSQL es una herramienta útil para obtener la fecha y hora local actuales sin incluir la información de la zona horaria. Esto la convierte en una opción ideal cuando necesitas trabajar con valores temporales en un formato más simple o cuando la precisión de la zona horaria no es relevante para tu caso de uso. Si necesitas incluir la zona horaria, puedes optar por la función CURRENT_TIMESTAMP() como alternativa.

Como parte de las funciones de fecha en PostgreSQL, LOCALTIMESTAMP es una opción confiable y eficiente para registrar marcas temporales o trabajar con datos cronológicos sin complicaciones adicionales relacionadas con el manejo de zonas horarias. Es ampliamente utilizada en aplicaciones que requieren operaciones con fechas y horas locales de manera estándar.

En este artículo, primero exploraremos la sintaxis básica de LOCALTIMESTAMP, y luego veremos ejemplos prácticos para mostrar cómo implementarla en tus consultas y aprovechar su funcionalidad en diferentes escenarios.

Para más información, puedes consultar la documentación oficial de la función LOCALTIMESTAMP en PostgreSQL.

Sintaxis

La sintaxis para utilizar la función LOCALTIMESTAMP en PostgreSQL es la siguiente:

localtimestamp
localtimestamp(precision)

Se puede utilizar la función sin argumento para que nos devuelva toda la precisión disponible o con argumento para reducir la precisión.

LOCALTIMESTAMP sin precisión

SELECT localtimestamp;
Función LOCALTIMESTAMP en PostgreSQL

LOCALTIMESTAMP con precisión

SELECT localtimestamp(0), localtimestamp(2);

LOCALTIMESTAMP en transacciones

Es importante tener en cuenta que al utilizar la función LOCALTIMESTAMP en PostgreSQL dentro de transacciones, esta devolverá la fecha y hora locales correspondientes al momento en que la transacción comenzó. Esto implica que, sin importar cuántas veces llames a la función durante la misma transacción, el valor retornado permanecerá constante y no reflejará cambios posteriores al inicio de la misma.

BEGIN;
SELECT localtimestamp;
SELECT pg_sleep(3);
SELECT localtimestamp;
COMMIT;

Escribir un comentario