Tage bis heute in PostgreSQL hinzufügen

Shihab Sikder 20 Juni 2023
  1. Erstellen Sie eine Tabelle mit einem Feld vom Typ Datum
  2. Fügen Sie Tage mit dem Datum hinzu
Tage bis heute in PostgreSQL hinzufügen

Postgres hat Daten vom Typ Datum, die wir verwenden können, um Datum-Informationen mit unterschiedlichen Stilen zu speichern. Postgres kann auch Datum oder Uhrzeit mit bestimmten Einheiten erhöhen oder verringern.

Dieses Tutorial wird uns beibringen, wie man viele Tage in date hinzufügt, während man PostgreSQL verwendet.

Erstellen Sie eine Tabelle mit einem Feld vom Typ Datum

Wir haben eine Projekt-Tabelle mit verschiedenen Feldern/Spalten. Beachten Sie, dass diese Tabelle ihr Erstellungsdatum Datum hat, und es gibt eine weitere Spalte mit einem ganzzahligen Wert, den wir mit dem Datum hinzufügen und anzeigen möchten.

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;

Ausgang:

 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)

Fügen Sie Tage mit dem Datum hinzu

Wir können die Methode Intervall in unserer Abfrage verwenden, um den Anspruch Datum zu erhalten. Also fügen wir das Intervall mit der Spalte erstellt hinzu und drucken es aus. Die Abfrage sieht wie folgt aus:

select id,
       project,
       created,
       interval,
       date(created + interval '1 day' * interval) as deadline
from project;

Hier ist die Ausgabe:

 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

Es funktioniert auch ohne die Intervall-Methode. Wir können die Abfrage auch schreiben als:

select id,
       project,
       created,
       interval,
       date(created + interval) as deadline
from project;

Ausgang:

 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

Hier können wir sehen, dass die Spalte deadline den Intervallbetrag der Tage mit der Spalte created hinzufügt. Um mehr über das Datum und die Uhrzeit in Postgres zu erfahren, besuchen Sie die folgende offizielle Dokumentation.

Shihab Sikder avatar Shihab Sikder avatar

I'm Shihab Sikder, a professional Backend Developer with experience in problem-solving and content writing. Building secure, scalable, and reliable backend architecture is my motive. I'm working with two companies as a part-time backend engineer.

LinkedIn Website

Verwandter Artikel - PostgreSQL Date