I think what you need is something like this:


Code:
select fcp.concurrent_program_name||' - '||
fcpt.user_concurrent_program_name "Program"
,count(gsrd.request_id) "SLA miss count",
count(*) total,
((count(gsrd.request_id)/count(*)) * 100 prop
from 
(select * from sla_request_data 
where start_date between '01-SEP-2005' and '30-SEP-2005') gsrd,
fnd_concurrent_requests fcr,
fnd_concurrent_programs fcp,
fnd_concurrent_programs_tl fcpt
where 
gsrd.request_id (+) = fcr.request_id
and fcr.concurrent_program_id = fcp.concurrent_program_id
and fcpt.concurrent_program_id = fcp.concurrent_program_id
and fcpt.language = 'US'
and fcr.program_application_id = fcp.application_id
and fcpt.application_id = fcp.application_id
group by fcp.concurrent_program_name
,fcpt.user_concurrent_program_name
The drawback is that this would return rows in dates other than September as well. Is there a start_date on the find_concurrent_requests table as well ?