pesquisa count de + de um plano [RESOLVIDO]

1. pesquisa count de + de um plano [RESOLVIDO]

Luis Vitorio
vitorioluis

(usa Debian)

Enviado em 16/01/2012 - 13:48h

Pessoal tenho vários planos exemplo plano1,plano2,plano3
como exibir um relatório com o total de cada plano na mesma pesquisa mais ou menos assim:


plano1| plano2| plano3|
12 11 1


--essa pesquisa exibe o resultado individualmente tendo que relizar varias pesquisas
SELECT count(*)
FROM tb_pti_plano_titular pti
INNER JOIN tb_pla_plano pla ON pti.pla_codigo = pla.pla_codigo
INNER JOIN tb_spt_status_plano_titular sta ON pti.spt_codigo =sta.spt_codigo
INNER JOIN tb_pre_prestadora pre ON pre.pre_codigo = pla.pre_codigo
INNER JOIN tb_tit_titular tit ON tit.tit_codigo = pti.tit_codigo
WHERE sta.spt_codigo=1 and
pti_data_vigencia BETWEEN '2011-12-01' and '2011-12-31'
--AND pre.pre_codigo=15 --plano1
--AND pre.pre_codigo=4 --plano2
--AND pre.pre_codigo=17 --plano3
ORDER BY 1



  


2. Re: pesquisa count de + de um plano [RESOLVIDO]

Luis Vitorio
vitorioluis

(usa Debian)

Enviado em 16/01/2012 - 15:30h

FOI MAIS FACIL DO QUE IMAGINEI

SELECT
CASE
WHEN pti.pre_codigo = '1' THEN 'PLANO1'
WHEN pti.pre_codigo = '3' THEN 'PLANO2'
WHEN pti.pre_codigo = '4' THEN 'PLANO3'
ELSE 'PLANO4' END AS OPERADORA,
COUNT(*) as ADESÕES
FROM tb_pti_plano_titular pti
INNER JOIN tb_pla_plano pla ON pti.pla_codigo = pla.pla_codigo
INNER JOIN tb_spt_status_plano_titular sta ON pti.spt_codigo =sta.spt_codigo
INNER JOIN tb_pre_prestadora pre ON pre.pre_codigo = pla.pre_codigo
INNER JOIN tb_tit_titular tit ON tit.tit_codigo = pti.tit_codigo
WHERE
sta.spt_codigo=1 AND pti_data_vigencia BETWEEN '2006-01-01' AND '2011-12-31'
GROUP BY
CASE
WHEN pti.pre_codigo = '1' THEN 'PLANO1'
WHEN pti.pre_codigo = '3' THEN 'PLANO2'
WHEN pti.pre_codigo = '4' THEN 'PLANO3'
ELSE 'PLANO4' END
ORDER BY 1






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts