PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Subtrahieren Sie Minuten von einem Zeitwert in PostgreSQL

In PostgreSQL können wir den - verwenden Operator, um eine oder mehrere Minuten von einem Zeitwert abzuziehen.

Als „Zeit“-Wert könnte dies eine tatsächliche time sein Wert, ein timestamp , oder ein interval . Wir können auch Minuten von einem date abziehen Wert oder ein date und time Kombination.

Beispiel

Wir können Intervalle angeben, wenn wir Arithmetik mit Datum und Uhrzeit durchführen. Um also eine oder mehrere Minuten abzuziehen, können wir minute verwenden oder minutes :

SELECT time '07:00' - interval '1 minute';

Ergebnis:

06:59:00

Mehrzahl

Und im Plural:

SELECT time '07:00' - interval '45 minutes';

Ergebnis:

06:15:00

Zeitstempel

Und hier ist es mit einem timestamp Wert:

SELECT timestamp '2030-01-20 09:00' - interval '30 minutes';

Ergebnis:

2030-01-20 08:30:00

Intervalle

Wir können auch Minuten von einem interval abziehen :

SELECT interval '5 hours' - interval '90 minutes';

Ergebnis:

03:30:00

Termine

Wir können sogar Minuten von einem date abziehen Wert:

SELECT date '2030-01-20' - interval '12 minutes';

Ergebnis:

2030-01-19 23:48:00

Das Ergebnis ist ein timestamp Wert.

Datums- und Uhrzeitwerte kombiniert

Wir können auch ein date hinzufügen und time -Wert zusammen und subtrahieren Sie Minuten davon:

SELECT date '2030-01-20' + time '01:00' - interval '18 minutes';

Ergebnis:

2030-01-20 00:42:00

Angegeben in Sekunden

Wir können alternativ die entsprechende Zahl in Sekunden subtrahieren:

SELECT time '15:45' - interval '120 seconds';

Ergebnis:

15:43:00

Angegeben in Stunden

Wenn die abzuziehenden Minuten in 60-Minuten-Schritten sind, können wir alternativ Stunden verwenden:

SELECT time '15:45' - interval '1 hour';

Ergebnis:

14:45:00

Negative Werte

Es ist möglich, Datumsarithmetik mit negativen Werten durchzuführen. Wenn wir einen negativen Wert mit - verwenden Operator, dann wird die angegebene Anzahl von Minuten zum eingegebenen Datum/der eingegebenen Uhrzeit addiert. Aber wenn wir es mit dem + verwenden -Operator, dann wird er vom eingegebenen Datum/der eingegebenen Uhrzeit abgezogen.

Beispiel:

SELECT time '03:00' + interval '-2 minutes';

Ergebnis:

02:58:00