I PostgreSQL kan vi använda - operatör för att subtrahera en eller flera minuter från ett tidsvärde.
Med "tid"-värde kan detta vara en faktisk time värde, en timestamp , eller ett interval . Vi kan också subtrahera minuter från ett date värde eller ett date och time kombination.
Exempel
Vi kan ange intervall när vi utför aritmetik mot datum och tider. Så för att subtrahera en eller flera minuter kan vi använda minute eller minutes :
SELECT time '07:00' - interval '1 minute'; Resultat:
06:59:00
Plural
Och i pluralform:
SELECT time '07:00' - interval '45 minutes'; Resultat:
06:15:00
Tidsstämplar
Och här är den med en timestamp värde:
SELECT timestamp '2030-01-20 09:00' - interval '30 minutes'; Resultat:
2030-01-20 08:30:00
Intervaller
Vi kan också subtrahera minuter från ett interval :
SELECT interval '5 hours' - interval '90 minutes'; Resultat:
03:30:00
Datum
Vi kan till och med subtrahera minuter från ett date värde:
SELECT date '2030-01-20' - interval '12 minutes'; Resultat:
2030-01-19 23:48:00
Resultatet är en timestamp värde.
Kombinerade datum- och tidsvärden
Vi kan också lägga till ett date och time värde tillsammans och subtrahera minuter från det:
SELECT date '2030-01-20' + time '01:00' - interval '18 minutes'; Resultat:
2030-01-20 00:42:00
Specificerat i sekunder
Vi kan alternativt subtrahera motsvarande tal i sekunder:
SELECT time '15:45' - interval '120 seconds'; Resultat:
15:43:00
Specificerat i timmar
Om minuterna som ska subtraheras är i steg om 60 minuter, kan vi alternativt använda timmar:
SELECT time '15:45' - interval '1 hour'; Resultat:
14:45:00
Negativa värden
Det är möjligt att utföra datumaritmetik med negativa värden. Om vi använder ett negativt värde med - operatör, kommer det angivna antalet minuter att läggas till inmatat datum/tid. Men om vi använder det med + operatör, så kommer den att subtraheras från inmatat datum/tid.
Exempel:
SELECT time '03:00' + interval '-2 minutes'; Resultat:
02:58:00