PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Soustraire des minutes d'une valeur de temps dans PostgreSQL

Dans PostgreSQL, nous pouvons utiliser le - opérateur pour soustraire une ou plusieurs minutes d'une valeur de temps.

Par valeur "time", cela pourrait être un réel time valeur, un timestamp , ou un interval . Nous pouvons également soustraire des minutes d'une date valeur ou une date et time combinaison.

Exemple

Nous pouvons spécifier des intervalles lors de l'exécution d'arithmétiques par rapport à des dates et des heures. Donc pour soustraire une ou plusieurs minutes, on peut utiliser minute ou minutes :

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

Résultat :

06:59:00

Pluriel

Et au pluriel :

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

Résultat :

06:15:00

Horodatages

Et le voici avec un timestamp valeur :

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

Résultat :

2030-01-20 08:30:00

Intervalles

Nous pouvons également soustraire des minutes d'un interval :

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

Résultat :

03:30:00

Dates

Nous pouvons même soustraire des minutes d'une date valeur :

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

Résultat :

2030-01-19 23:48:00

Le résultat est un timestamp valeur.

Valeurs de date et d'heure combinées

Nous pouvons également ajouter une date et time valeur ensemble, et soustrayez-en des minutes :

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

Résultat :

2030-01-20 00:42:00

Spécifié en secondes

Nous pouvons alternativement soustraire le nombre équivalent en secondes :

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

Résultat :

15:43:00

Spécifié en heures

Si les minutes à soustraire sont par incréments de 60 minutes, nous pouvons alternativement utiliser les heures :

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

Résultat :

14:45:00

Valeurs négatives

Il est possible d'effectuer une arithmétique de date avec des valeurs négatives. Si nous utilisons une valeur négative avec le - opérateur, le nombre de minutes spécifié sera ajouté à la date/heure d'entrée. Mais si on l'utilise avec le + opérateur, alors il sera soustrait de la date/heure d'entrée.

Exemple :

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

Résultat :

02:58:00