PostgreSQL Convertir TimeStamp hasta la fecha

PostgreSQL Convertir TimeStamp hasta la fecha
PostgreSQL es una base de datos relacional que tiene diferentes funciones para manejar fechas. Puede trabajar con marcas de tiempo o convertir las marcas de tiempo en fechas utilizando diferentes formas. Las funciones de múltiples fechas vienen con PostgreSQL, incluida la conversión de la cadena hasta la fecha, la marca de tiempo hasta la fecha, obtener la fecha actual, etc.

Esta guía se centra en cinco formas de convertir las marcas de tiempo hasta la fecha en PostgreSQL.

Convertir la marca de tiempo hasta la fecha

La marca de tiempo se refiere a la fecha y hora de un evento determinado. Podría ser la fecha y hora actuales u otra fecha y hora aleatorias que se especifica en la base de datos o como entrada. Cuando tiene una marca de tiempo, convertirla hasta la fecha le permite trabajar con las fechas con mayor precisión, especialmente para el análisis de datos. Por ejemplo, es posible que desee extraer el día o el año de la marca de tiempo. Veamos cómo lograr eso.

Usando la función de fecha

Supongamos que tiene una relación en su PostgreSQL que contiene una marca de tiempo como una transacción dada. Puede usar la fecha () para convertir la marca de tiempo hasta la fecha y extraer el valor utilizando la siguiente sintaxis:

# Seleccione fecha (timestamp_column) de Relation_Name;

Aquí hay un ejemplo para obtener la fecha de la columna de marca de tiempo en una tabla determinada:

Usando la función ahora

El ahora() En PostgreSQL recupera la fecha y hora actuales. PostgreSQL tiene tres tipos de datos: fecha, tiempo, y marca de tiempo. Puede extraer cualquiera de los tipos de datos usando ahora ().

Para extraer la fecha de la marca de tiempo en PostgreSQL, puede usar la función Now () y especificar el tipo de datos de fecha utilizando la palabra clave Seleccionar.

# Seleccione ahora () :: fecha;

Ejecutar el comando da la fecha actual del sistema.

Usando la función TO_CHAR

El To_char () la función convierte varios tipos de datos. Podemos usarlo para convertir una marca de tiempo a una fecha. Utiliza la siguiente sintaxis:

# To_char (expresión, formato);

El expresión representa los tipos de datos, como las marcas de tiempo, que deben convertirse en las cadenas requeridas. Hay diferentes formas de usar la función to_char () para extraer la fecha.
Primero, combinemos la función con ahora () para obtener la marca de tiempo y convertirla a una fecha utilizando un formato especificado. Combine la función ahora () con el fecha palabra clave.

# Seleccione To_Char (ahora () :: fecha, 'dd-mm-yyyy');

El "dd-mm-yyyy"Representa el formato de fecha que queremos obtener como salida.

También puede extraer un solo detalle como el año. Aquí hay un ejemplo:

Otra forma de convertir la marca de tiempo hasta la fecha usando la función to_char () es usar la fecha y hora actual palabra clave para obtener la marca de tiempo actual, luego especifique qué información extraer de ella.

Extraigamos el día de la semana, día del mes (Dd), y la hora del día usando el formato de 12 horas (HH12), los minutos (MI), y los segundos (Ss) con el siguiente comando:

# Seleccione TO_CHAR (Current_Timestamp, 'Day, DD HH12: MI: SS');

La función to_char () tiene diferentes formatos que puede usar. El ejemplo dado es cómo usarlo para convertir una marca de tiempo en una fecha.

Usando la función de extracto

La función extract () extrae subcampos, como el año, de la marca de tiempo. La función es útil cuando solo se requiere un subcampo de fecha determinada. Utiliza la siguiente sintaxis:

# Extracto (subcampo desde la fuente);

Para este ejemplo, extraemos el mes de la marca de tiempo especificada utilizando la palabra clave SELECT y guardamos como "mes."Puede usar cualquier nombre para guardarlo.

# Seleccione Extracto (mes de la marca de tiempo '2022-11-28 21:34:45') como mes;

También puedes extraer el día del mes.

La función extract () también puede funcionar con la función ahora () para usar la hora datetea actual como la marca de tiempo en lugar de especificarla. Aquí, reemplace la marca de tiempo con ahora () como sigue:

# Seleccione Extracto (día desde ahora ()) como día;

Todavía obtenemos la misma salida.

Puede reemplazar el subcampo para extraer cualquier información de la marca de tiempo.

Usando la función date_part

La función date_part () funciona de manera similar a la función extract () que extrae el subcampo de la marca de tiempo.

Use la siguiente sintaxis:

# Date_part (subfield, fuente);

El subcampo es el año, mes, o día que quieres extraer. Mientras que la fuente es la marca de tiempo especificada o actual.

Extraemos el año de una marca de tiempo específica:

# Seleccione Date_part ('Year', TimeStamp '2012-02-11 12:23:21') the_year;

Para extraer el año de la marca de tiempo del sistema actual, use ahora ().

# Seleccione Date_part ('año', ahora ()) the_year;

Para extraer más de un subcampo, puede ejecutar este comando:

# Seleccione Date_part ('Year', TimeStamp '2022-10-28 10:20:34') t_year, date_part ('mes', marca de tiempo '2022-10-28 10:20:34') t_month, date_part ('día ', Marca de tiempo' 2022-10-28 10:20:34 ') t_day;

Alternativamente, puede ejecutar el mismo comando usando la función Now () para la hora datetea actual:

# Seleccione Date_part ('Year', Now ()) t_year, date_part ('mes', ahora ()) t_month, date_part ('day', ahora ()) t_day;

Conclusión

PostgreSQL ofrece diferentes funciones para trabajar con fechas. Esta guía presentó cinco funciones que puede usar para convertir las marcas de tiempo hasta la fecha, incluida la fecha (), to_char (), ahora (), extra () y date_part (). Dependiendo de su objetivo, puede usar cualquiera de ellos para obtener la fecha.