Как удалить все записи старше 3 часов

Вроде бы простая задача но код который составил из инфы в инете не работает

DELETE FROM cash_orders WHERE create_date<'2014-05-05 13:09:04'::date-'3 hour'::interval;

2014-05-05 13:09:04 текущая дата

ошибок ни каких не пишет, но и не удаляет ничего, подскажите в чем проблема ?

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

А вы не пробовали

А вы не пробовали написать:
SELECT '2014-05-05 13:09:04'::date-'3 hour'::interval;
и посмореть что он вам напишет? Мне вот показало

      ?column?       
---------------------
 2014-05-04 21:00:00
(1 строка)

что явно лажа.В мануале http://postgresql.ru.net/manual/functions-datetime.html вроде всё вполне понятно написано.
Вот что вам нужно:

# SELECT timestamp '2014-05-05 13:09:04' - interval '3 hours';
      ?column?       
---------------------
 2014-05-05 10:09:04

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023