Agregar días hasta la fecha en PostgreSQL
Postgres tiene datos de tipo fecha
que podemos usar para almacenar información de fecha
con diferentes estilos. Postgres también puede aumentar o disminuir la fecha
o la hora con unidades específicas.
Este tutorial nos enseñará cómo agregar muchos días en fecha
mientras usamos PostgreSQL.
Crear una tabla que tenga un campo con tipo Fecha
Tenemos una tabla de proyecto
que contiene diferentes campos/columnas. Observe que esta tabla tiene su fecha
de creación, y hay otra columna con un valor entero que queremos agregar con la fecha
y mostrarla.
create table project (
id INT,
Project VARCHAR(50),
Created DATE,
Interval INT
);
insert into project (id, Project, Created, Interval)
values
( 1, 'Heron Therapeutics, Inc.', '2021-10-23', 9),
( 2, 'CryoPort, Inc.', '2022-05-07', 5),
( 4, 'Turtle Beach Corporation', '2022-07-27', 10),
( 5, 'Banco Santander Chile', '2022-02-08', 6),
( 6, 'BLACKROCK INTERNATIONAL, LTD.', '2022-07-28', 10),
( 7, 'Sohu.com Inc.', '2021-10-14', 12),
( 8, 'Northeast Bancorp', '2022-07-20', 6);
select * from project;
Producción :
id | project | created | interval
----+-------------------------------+------------+----------
1 | Heron Therapeutics, Inc. | 2021-10-23 | 9
2 | CryoPort, Inc. | 2022-05-07 | 5
4 | Turtle Beach Corporation | 2022-07-27 | 10
5 | Banco Santander Chile | 2022-02-08 | 6
6 | BLACKROCK INTERNATIONAL, LTD. | 2022-07-28 | 10
7 | Sohu.com Inc. | 2021-10-14 | 12
8 | Northeast Bancorp | 2022-07-20 | 6
(7 rows)
Añadir Días Con la fecha
Podemos usar el método intervalo
dentro de nuestra consulta para obtener la fecha
del reclamo. Entonces, agregaremos el intervalo
con la columna creado
y lo imprimiremos. La consulta será como la siguiente:
select id,
project,
created,
interval,
date(created + interval '1 day' * interval) as deadline
from project;
Aquí está la salida:
id | project | created | interval | deadline
----+-------------------------------+------------+----------+------------
1 | Heron Therapeutics, Inc. | 2021-10-23 | 9 | 2021-11-01
2 | CryoPort, Inc. | 2022-05-07 | 5 | 2022-05-12
4 | Turtle Beach Corporation | 2022-07-27 | 10 | 2022-08-06
5 | Banco Santander Chile | 2022-02-08 | 6 | 2022-02-14
6 | BLACKROCK INTERNATIONAL, LTD. | 2022-07-28 | 10 | 2022-08-07
7 | Sohu.com Inc. | 2021-10-14 | 12 | 2021-10-26
8 | Northeast Bancorp | 2022-07-20 | 6 | 2022-07-26
También funcionará sin el método intervalo
. También podemos escribir la consulta como:
select id,
project,
created,
interval,
date(created + interval) as deadline
from project;
Producción :
id | project | created | interval | deadline
----+-------------------------------+------------+----------+------------
1 | Heron Therapeutics, Inc. | 2021-10-23 | 9 | 2021-11-01
2 | CryoPort, Inc. | 2022-05-07 | 5 | 2022-05-12
4 | Turtle Beach Corporation | 2022-07-27 | 10 | 2022-08-06
5 | Banco Santander Chile | 2022-02-08 | 6 | 2022-02-14
6 | BLACKROCK INTERNATIONAL, LTD. | 2022-07-28 | 10 | 2022-08-07
7 | Sohu.com Inc. | 2021-10-14 | 12 | 2021-10-26
8 | Northeast Bancorp | 2022-07-20 | 6 | 2022-07-26
Aquí, podemos ver que la columna fecha límite
agrega la cantidad de intervalo de los días con la columna creado
. Para saber más sobre la fecha y la hora en Postgres, visite la siguiente documentación oficial.