[firebase-br] Select aparentemente muito complicado (?????)
Fabiano Arndt
fabianoallex em hotmail.com
Sáb Nov 27 11:04:39 -03 2004
Olá Denis,
vc poderia fazer diferente
fazer apenas três colunas, pois da forma q vc quer fazer vc teria um numero
variavel de colunas (coisa q eu nao sei como fazer), vamos imaginar q vc
tivesse
50 produtos, isso resultaria em 52 colunas, oq, na minha opinião nao iria
ficar legal.
talvez seria melhor assim:
cliente | produto | quantidade
----------------------------------------------------
cliente1 | produto1 | 25
cliente1 | produto2 | 33
cliente1 | produto3 | 48
cliente2 | produto1 | 18
cliente2 | produto2 | 44
cliente3 | produto1 | 12
cliente3 | produto3 | 19
a sql ficaria mais ou menos assim:
select
nm_cliente,
nm_produto,
sum(QUANTIDADE) as quantidade
from
clientes,
produtos,
vendas
where
clientes.cd_cliente = vendas.cd_cliente
and
produtos.cd_produto = vendas.cd_produto
group by
nm_cliente, -->estaria ordenado pelo nome do cliente
nm_produto
ou
group by
nm_produto,-->estaria ordenado pelo nome do produto
nm_cliente
ps. não sei se a sql tá certa e nao tenho certeza se o group by vai ordenar
como te falei,
caso nao ordene use um order by.
espero ter ajudado.
Fabiano.
>From: "Denis da Silva Guerra" <ministeriokairos em yahoo.com.br>
>Reply-To: FireBase <lista em firebase.com.br>
>To: "'FireBase'" <lista em firebase.com.br>
>Subject: [firebase-br] Select aparentemente muito complicado (?????)
>Date: Sat, 27 Nov 2004 10:30:09 -0200
>
>
>Pessoal,
>Até hoje, com os conhecimentos que adquiri aqui na lista, tenho conseguido
>"me virar" para construir os meus selects.
>Só que agora me deparei com uma situação que ainda não encontrei solução.
>É o seguinte:
>
>Tenho as seguintes tabelas:
>
>PRODUTOS (apenas 10 registros)
>--------
>CD_PRODUTO
>NM_PRODUTO
>
>
>CLIENTES
>--------
>CD_CLIENTE
>NM_CLIENTE
>
>
>VENDAS
>------
>CD_PRODUTO
>CD_CLIENTE
>QUANTIDADE
>
>O que eu preciso é o total (soma das quantidades) de produtos comprados por
>cada cliente.
>Assim:
>
>Cliente | Produto1 | Produto2 | Produto3 | Produto4...
>---------+----------+----------+----------+------------
>Fulano | 50 | 20 | 0 | 0
>Ciclano | 0 | 10 | 10 | 0
>Beltrano | 100 | 30 | 0 | 10
>...
>
>
>Tem algum jeito simples de construir esta pesquisa?
>Qualquer sugestão é muito bem vinda.
>
>
>[ ]'s
>
>~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^
>Denis da Silva Guerra
>denisdsguerra em yahoo.com.br
>São José do Vale do Rio Preto - RJ
>~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^ .
>
>---
>Outgoing mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.772 / Virus Database: 519 - Release Date: 01/10/2004
>
>
>
>______________________________________________
>FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>Para editar sua configuração na lista, use o endereço
>http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
_________________________________________________________________
MSN Messenger: converse com os seus amigos online.
http://messenger.msn.com.br
Mais detalhes sobre a lista de discussão lista