|
ActiveDelphi .: O site do programador Delphi! :.
|
Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
joemil Moderador
Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9098 Localização: Sinop-MT
|
Enviada: Ter Mar 28, 2017 7:13 pm Assunto: Agrupar por 2 campos distintos |
|
|
fala pessoal, tenho uma duvida aqui q nao to conseguindo resolver:
tenho as tabelas
Código: | CLIENTES
codcliente
codgrupo
cliente
GRUPO
codgrupo
grupo
ITENS
codcliente
valor
|
e preciso fazer um select da seguinte forma
Código: | SELECT c.codcliente, c.cliente, SUM(valor)
FROM clientes c
INNER JOIN itens i ON i.codcliente = c.codcliente |
eu preciso calcular o total por cliente, porem o cliente q possui grupo, nao pode aparecer (como se fosse uma matriz), ai nesse caso eu tenho q calcular o total do grupo, juntamente com os clientes q nao possuem grupo _________________ <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/ |
|
Voltar ao Topo |
|
|
imex Moderador
Registrado: Sexta-Feira, 7 de Janeiro de 2011 Mensagens: 11666
|
Enviada: Ter Mar 28, 2017 8:46 pm Assunto: |
|
|
Boa noite,
Experimente dessa forma para ver se é obtido o resultado esperado:
Código: | SELECT
coalesce(g.codgrupo, c.codcliente) as codigo,
coalesce(g.grupo, c.cliente) as nome,
SUM(i.valor) as valor
FROM clientes c
INNER JOIN itens i ON i.codcliente = c.codcliente
LEFT JOIN grupo g ON g.codgrupo = c.codgrupo
group by
coalesce(g.codgrupo, c.codcliente),
coalesce(g.grupo, c.cliente) |
Espero que ajude |
|
Voltar ao Topo |
|
|
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|