Fórum Ajuda em um Select #474709

01/04/2014

0

Pessoal eu sou novo em programação e ainda tenho muitas duvidas e estou com um problema em um SQL para gerar um relatório.

Vou explicar o que está ocorrendo

eu tenho uma tabela função (o que a pessoa faz) chamada gsaclb003, tenho uma tabela clube chamada gsaclb003
e por fim a tabela associado gsaclb004, cada associado deve ter uma função e pertencer a um clube eu preciso do seguinte
um select que me traga agrupado por clube e somado as funções cada uma em uma coluna

Clube Função 1 Função 2 Função 3 Total
1- Lions Clube 10 5 5 20
2- TTC Clube 12 8 3 23

estou usando o select abaixo só que ele me retorna somando as funções em todos os clubes, exemplo se o clube um tem apenas 1 associado com aquela função mas no clube 2 tem 8 associados com aquela função ele traz tanto no clube um como no clube 2, a contagem de 9 pessoas com aquela função


select descricaoclub,
(select count(associadofunc) from gsaclb004 where associadofunc = 1 ) as cl ,
(select count(associadofunc) from gsaclb004 where associadofunc = 2 ) as cl
from gsaclb004, gsaclb002, gsaclb003
where associadoclub = idclube
and associadofunc = idfuncao
group by descricaoclub



como posso fazer para mudar isso?

Thales Benegas

Thales Benegas

Responder

Posts

01/04/2014

Bruno Leandro

Quanto tempo :)

Tenta assim

select descricaoclub,
(select count(x.associadofunc) from gsaclb004 x where x.associadofunc = 1 and x.associadoclub = gsaclb004.idclube ) as cl1 ,
(select count(y.associadofunc) from gsaclb004 y where y.associadofunc = 2 and y.associadoclub = gsaclb004.idclube ) as cl2
from gsaclb004, gsaclb002, gsaclb003
where associadoclub = idclube
and associadofunc = idfuncao
group by descricaoclub

qualquer coisa manda um email eu te ajudo
Responder

Gostei + 0

02/04/2014

Thales Benegas

Valeu Bruno, deu certo aqui....Valeu pela ajuda da próxima mando direto no seu e-mail rsrs
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar