EDITAR Postgres 9.3
Estou trabalhando em um relatório que tem o seguinte esquema: http://sqlfiddle.com/#!15/fd104/2
A consulta atual está funcionando bem, que se parece com isso:
Basicamente, é uma junção interna de 3 tabelas. Eu não fiz essa consulta, mas o desenvolvedor que a deixou e quero modificar a consulta. Como você pode ver, TotalApplication
apenas conta o aplicativo total com base no arquivo a.agent_id
. E você pode ver a totalapplication
coluna no resultado. O que eu quero é remover isso e alterar totalapplication
para uma nova coluna de duas. Eu quero adicionar uma coluna completedsurvey
e . partitalsurvey
Então, basicamente, esta parte se tornará
SELECT a.agent_id as agent_id, COUNT(a.id) as CompletedSurvey
FROM forms a WHERE a.created_at >= '2015-08-01' AND
a.created_at <= '2015-08-31' AND disposition = 'Completed Survey'
GROUP BY a.agent_id
Acabei de adicionar AND disposition = 'Completed Survey'
Mas preciso de outra coluna para a partialsurvey
qual tenha a mesma consulta completedsurvey
sendo a única diferença
AND disposition = 'Partial Survey'
e
COUNT(a.id) as PartialSurvey
Mas não sei onde colocar essa consulta ou como será a consulta. Então, a saída final tem essas colunas
agent_id, name, completedsurvey, partialsurvey, loginhours, applicationperhour, rph
Quando estiver ok, applicationperhour e rph eu posso consertar sozinho
Se entendi corretamente, você está procurando um agregado filtrado (condicional):
Edite
para versões mais antigas (< 9.4) você precisa usar uma
case
declaração: