В PostgreSQL можем да използваме -
оператор за изваждане на една или повече минути от времева стойност.
По стойност „време“ това може да е действително time
стойност, timestamp
или interval
. Можем също да извадим минути от date
стойност или date
и time
комбинация.
Пример
Можем да посочим интервали при извършване на аритметика спрямо дати и часове. Така че, за да извадим една или повече минути, можем да използваме minute
или minutes
:
SELECT time '07:00' - interval '1 minute';
Резултат:
06:59:00
Множествено число
И в множествено число:
SELECT time '07:00' - interval '45 minutes';
Резултат:
06:15:00
Чети за време
И ето го с timestamp
стойност:
SELECT timestamp '2030-01-20 09:00' - interval '30 minutes';
Резултат:
2030-01-20 08:30:00
Интервали
Можем също да извадим минути от interval
:
SELECT interval '5 hours' - interval '90 minutes';
Резултат:
03:30:00
Дати
Можем дори да извадим минути от date
стойност:
SELECT date '2030-01-20' - interval '12 minutes';
Резултат:
2030-01-19 23:48:00
Резултатът е timestamp
стойност.
Комбинирани стойности за дата и час
Можем също да добавим date
и time
стойност заедно и извадете минутите от това:
SELECT date '2030-01-20' + time '01:00' - interval '18 minutes';
Резултат:
2030-01-20 00:42:00
Посочено в секунди
Алтернативно можем да извадим еквивалентното число за секунди:
SELECT time '15:45' - interval '120 seconds';
Резултат:
15:43:00
Посочено в часове
Ако минутите, които трябва да бъдат извадени, са на стъпки от 60 минути, можем алтернативно да използваме часове:
SELECT time '15:45' - interval '1 hour';
Резултат:
14:45:00
Отрицателни стойности
Възможно е да се извърши аритметика за дата с отрицателни стойности. Ако използваме отрицателна стойност с -
оператор, тогава посоченият брой минути ще бъде добавен към въведената дата/час. Но ако го използваме с +
оператор, тогава той ще бъде изваден от въведената дата/час.
Пример:
SELECT time '03:00' + interval '-2 minutes';
Резултат:
02:58:00