I PostgreSQL kan vi bruge - operatør for at trække et eller flere minutter fra en tidsværdi.
Ved "tidsværdi" kan dette være en faktisk time værdi, et timestamp , eller et interval . Vi kan også trække minutter fra en date værdi eller en date og time kombination.
Eksempel
Vi kan angive intervaller, når vi udfører aritmetik mod datoer og tidspunkter. Så for at trække et eller flere minutter fra, kan vi bruge minute eller minutes :
SELECT time '07:00' - interval '1 minute'; Resultat:
06:59:00
Flertal
Og i flertalsform:
SELECT time '07:00' - interval '45 minutes'; Resultat:
06:15:00
Tidsstempler
Og her er det med et timestamp værdi:
SELECT timestamp '2030-01-20 09:00' - interval '30 minutes'; Resultat:
2030-01-20 08:30:00
Intervaller
Vi kan også trække minutter fra et interval :
SELECT interval '5 hours' - interval '90 minutes'; Resultat:
03:30:00
Datoer
Vi kan endda trække minutter fra en date værdi:
SELECT date '2030-01-20' - interval '12 minutes'; Resultat:
2030-01-19 23:48:00
Resultatet er et timestamp værdi.
Dato- og tidsværdier kombineret
Vi kan også tilføje en date og time værdi sammen, og træk minutter fra det:
SELECT date '2030-01-20' + time '01:00' - interval '18 minutes'; Resultat:
2030-01-20 00:42:00
Specificeret i sekunder
Vi kan alternativt trække det tilsvarende tal fra i sekunder:
SELECT time '15:45' - interval '120 seconds'; Resultat:
15:43:00
Specificeret i timer
Hvis minutterne, der skal trækkes fra, er i intervaller på 60 minutter, kan vi alternativt bruge timer:
SELECT time '15:45' - interval '1 hour'; Resultat:
14:45:00
Negative værdier
Det er muligt at udføre datoregning med negative værdier. Hvis vi bruger en negativ værdi med - operatør, så vil det angivne antal minutter blive tilføjet til den indtastede dato/tid. Men hvis vi bruger det med + operatør, så trækkes den fra inputdatoen/tidspunktet.
Eksempel:
SELECT time '03:00' + interval '-2 minutes'; Resultat:
02:58:00