Quantcast
Channel: SQL.ru: Firebird, InterBase
Viewing all articles
Browse latest Browse all 1677

Условия в запрсое

$
0
0
Всем кто зашел в эту тему - доброго времени суток! Имею следующий вопрос:
имеется запрос вида (BD Firebird):

select c.f_name,c.s_name,c.job,min(l.dt),max(l.dt)
  from LOGTAB l
       join clitab c on c.num_kd=l.num_kd
  where l.pobj_n in (45,47) and cast(l.dt as date)='$op'
  group by l.num_kd,c.f_name,c.depar,c.job,c.s_name
  order by c.f_name


Столбец dt (timestamp) записывает время с турникета (вход и выход), события входа и выхода распознаются как pobj_n=45 или 47 (в зависимости от входа или выхода). Запрос отрабатывает, логика тоже срабатывает верно - выдает самое раннее время и самое позднее (по столбцу dt).

а вопрос в следующем: как можно реализовать чтобы min(l.dt) бралось из списка при условии что pobj_n=45, а max(l.dt) из списка pobj_n=47. ( разделить время по событиям)

Перепробовал и case и iif - не помогло. Может подскажите куда копать?

Viewing all articles
Browse latest Browse all 1677

Trending Articles