@Fene4ka531

Postgresql запрос, сравнение полученных данных и перевод в секунды, как сделать?

Здравствуйте, кто силён в Postgres подскажите, есть запрос, SELECT to_char (MAX(DATE_OP), 'DD.MM.YYYY HH24:MI:SS' ) FROM LoP_VTime; он возвращает значение 17.01.2018 14:20:32 (последнее время записи в таблицу). А теперь сам вопрос : как составить запрос так, чтобы он сравнивал текущую дату и время сервера, с этим запросом и переводил это всё в секунды, что бы на выходе получить целое положительное число. Если математически то 17.01.2018 14:50:01(системное) - 17.01.2018 14:20:32(полученное запросом) = 30 минут 31 секунда = 1831 секунда . Заранее спасибо
  • Вопрос задан
  • 200 просмотров
Решения вопроса 2
Melkij
@Melkij
PostgreSQL DBA
select extract(epoch from now() - MAX(DATE_OP)) seconds_ago from tablename;
Ответ написан
Комментировать
@Fene4ka531 Автор вопроса
Огромная Благодарность!! Очень помогли, но есть ещё вопрос: как округлить полученное значение(572.658458) до целого числа (572), заранее спасибо
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
AlexMcArrow
@AlexMcArrow
Люблю РНР, да я такой!
SELECT extract(epoch from timestamp DATE_OP) - extract(epoch from timestamp CURRENT_TIMESTAMP ) as delta  FROM LoP_VTime;

Не гарантирую работу - но суть такова.
Думаю у Melkij более корректно
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы