V PostgreSQL můžeme použít -
operátor odečíst jednu nebo více minut od časové hodnoty.
U hodnoty „čas“ to může být skutečný time
hodnotu, timestamp
nebo interval
. Můžeme také odečíst minuty od date
hodnotu nebo date
a time
kombinace.
Příklad
Můžeme určit intervaly při provádění aritmetiky s daty a časy. Pro odečtení jedné nebo více minut tedy můžeme použít minute
nebo minutes
:
SELECT time '07:00' - interval '1 minute';
Výsledek:
06:59:00
Množné číslo
A v množném čísle:
SELECT time '07:00' - interval '45 minutes';
Výsledek:
06:15:00
Časová razítka
A tady je to s timestamp
hodnota:
SELECT timestamp '2030-01-20 09:00' - interval '30 minutes';
Výsledek:
2030-01-20 08:30:00
Intervaly
Můžeme také odečíst minuty od interval
:
SELECT interval '5 hours' - interval '90 minutes';
Výsledek:
03:30:00
Data
Můžeme dokonce odečíst minuty od date
hodnota:
SELECT date '2030-01-20' - interval '12 minutes';
Výsledek:
2030-01-19 23:48:00
Výsledkem je timestamp
hodnotu.
Kombinované hodnoty data a času
Můžeme také přidat date
a time
hodnotu dohromady a odečtěte od toho minuty:
SELECT date '2030-01-20' + time '01:00' - interval '18 minutes';
Výsledek:
2030-01-20 00:42:00
Zadáno v sekundách
Alternativně můžeme odečíst ekvivalentní číslo v sekundách:
SELECT time '15:45' - interval '120 seconds';
Výsledek:
15:43:00
Uvedeno v hodinách
Pokud jsou minuty, které se mají odečíst, v krocích po 60 minutách, můžeme alternativně použít hodiny:
SELECT time '15:45' - interval '1 hour';
Výsledek:
14:45:00
Záporné hodnoty
Je možné provádět aritmetiku data se zápornými hodnotami. Pokud použijeme zápornou hodnotu s -
operátor, pak bude k zadanému datu/času přidán zadaný počet minut. Ale pokud jej použijeme s +
operátor, pak bude odečten od zadaného data/času.
Příklad:
SELECT time '03:00' + interval '-2 minutes';
Výsledek:
02:58:00