Разница между регистрами

Я хочу взять то, что интернат вернется в мою больницу менее чем за 72 часа, например:

id_People    id_issue    internation_in       internation_out
444          456789      2014-01-01      2014-01-07
444          465465      2014-02-10      2014-02-12
444          789564      2014-02-13      2014-02-20
  • Разница между internation_out 456789 - internation_in 465465= МЕНЬШЕ, чем 72 часа НЕТ
  • Разница между internation_out 465465-internation_in 789564= МЕНЬШЕ, чем 72 часа ДА

Количество повторных обращений менее 72 часов = 1

1 ответ

Если я правильно понимаю, вы хотите измерить время между кем-то, уходящим и возвращающимся:

select t.*,
       (case when internation_out + interval '72 hour' >
                  lag(internation_out) over (partition by id_people order by internaion_in)
             then 'YES'
             else 'NO'
        end)
from table t;
Другие вопросы по тегам