Я хотел бы сделать подсчет активных участников на основе поля program_code
, сгруппированного по имени менеджера. Но я также хочу подсчитать что-то еще в том же запросе, где должны выполняться три условия.Дело с несколькими условиями
select manager_name,
sum (case program_code when 'F' then 1 else 0 end) as F,
sum (case program_code
when 'FS' then 1
else 0
end)
from table1
where status='AC'
group by manager_name
Но я хочу, третий подсчет всех участников у которых есть possible_ind='Y' AND date_attended is not null AND status_cd='P'
Я не могу положить, что в case
заявление со всеми этими условиями. Есть ли способ, которым я могу это сделать? Нужно ли быть подзапросом в предложении select
? Я попробовал его с подзапросом в предложении select
, но он не группирует его по manager_name
.
select manager_name,
sum (program_code when 'F' then 1 else 0 end) as F,
sum (case program_code
when 'FS' then 1
else 0 end),
(select count(*)
from table1
where possible_ind='Y'
and date_attended is not null
and status_cd='P') as NEW
from table1
where status='AC'
group by manager_name
Имеются ли 'status' и' status_cd' два разных столбца? – peterm