Выборка записей между двумя временными метками

Я конвертирую скрипт Unix с командой SQL transact в команду PostgreSQL.

У меня есть таблица с записями, которые имеют поле last_update_time(xtime) и я хочу выбрать каждую запись в таблице, которая была обновлена в течение выбранного периода.

Скажем, текущее время - 05/01/2012 10:00:00, а выбранное время - 04/01/2012 23:55:00. Как мне выбрать все записи из таблицы, которые были обновлены между этими датами. Я преобразовал 2 времени в секунды в сценарии Unix перед выдачей команды psql и рассчитал интервал в секундах между этими двумя периодами.

Я думал что-то вроде

SELECT A,B,C FROM table
WHERE xtime BETWEEN now() - interval '$selectedtimeParm(in secs)' AND now();

У меня проблемы с оценкой Parm для selectedtimeParm - он не разрешается должным образом.

Примечание редактора: я не изменил неточное использование терминов период, временной интервал, время и дата для типа datetime timestamp, потому что я обсуждаю это в своем ответе.

20
задан Erwin Brandstetter 19 January 2012 в 23:53
поделиться