In PostgreSQL, possiamo usare - operatore per sottrarre uno o più minuti da un valore temporale.
Per valore "tempo", questo potrebbe essere un time effettivo valore, un timestamp o un interval . Possiamo anche sottrarre minuti da una date valore o una date e time combinazione.
Esempio
Possiamo specificare gli intervalli durante l'esecuzione di operazioni aritmetiche rispetto a date e orari. Quindi per sottrarre uno o più minuti, possiamo usare minute o minutes :
SELECT time '07:00' - interval '1 minute'; Risultato:
06:59:00
Plurale
E al plurale:
SELECT time '07:00' - interval '45 minutes'; Risultato:
06:15:00
Data e ora
Ed eccolo qui con un timestamp valore:
SELECT timestamp '2030-01-20 09:00' - interval '30 minutes'; Risultato:
2030-01-20 08:30:00
Intervalli
Possiamo anche sottrarre minuti da un interval :
SELECT interval '5 hours' - interval '90 minutes'; Risultato:
03:30:00
Date
Possiamo anche sottrarre minuti da una date valore:
SELECT date '2030-01-20' - interval '12 minutes'; Risultato:
2030-01-19 23:48:00
Il risultato è un timestamp valore.
Valori di data e ora combinati
Possiamo anche aggiungere una date e time valore insieme e sottrarre minuti da quello:
SELECT date '2030-01-20' + time '01:00' - interval '18 minutes'; Risultato:
2030-01-20 00:42:00
Specificato in pochi secondi
In alternativa possiamo sottrarre il numero equivalente in secondi:
SELECT time '15:45' - interval '120 seconds'; Risultato:
15:43:00
Specificato in ore
Se i minuti da sottrarre sono in incrementi di 60 minuti, possiamo in alternativa utilizzare le ore:
SELECT time '15:45' - interval '1 hour'; Risultato:
14:45:00
Valori negativi
È possibile eseguire aritmetica della data con valori negativi. Se utilizziamo un valore negativo con - operatore, il numero di minuti specificato verrà aggiunto alla data/ora di input. Ma se lo usiamo con il + operatore, verrà sottratto dalla data/ora di input.
Esempio:
SELECT time '03:00' + interval '-2 minutes'; Risultato:
02:58:00