[firebase-br] RES: SQL Join com três tabelas

Felix felix.sol em terra.com.br
Sex Set 10 12:12:25 -03 2010


Select cliente.codigo, cliente.nome, cliente.endereço, Venda.Produto,
Venda.Quantidade, Produto.Preco from Cliente, Venda, Produto where
cliente.codigo = venda.cliente and venda.produto = produto.codigo

Observacoes:
1. o preco ira variar com o tempo, entao eu normalmente NAO USO dessa forma
para ver as vendas anteriores, mantenho um campo na tabela VENDAS com o
valor praticado naquela operacao
2. Nas tabelas eu sempre uso o mesmo nome de campo, ex.: em Clientes =
CodigoCLI; em Vendas tambem CodigoCLI

Fco. Felix
Desenvolvimento de Sistemas
www.soltecnologia.com.br


-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Paulo Geloramo
Enviada em: sexta-feira, 10 de setembro de 2010 11:48
Para: lista em firebase.com.br
Assunto: [firebase-br] SQL Join com três tabelas

Olá Pessoal,


Firebird 2.1.3

Com uma SQL, sem usar SP, e possível fazer um join com três
tabelas e listar todos os registros da tabela cliente e venda,
mas não listar todos os produtos.

Exemplo:
Tenho as tabelas:

Cliente
A
B

Produto
X
Y
Z

Venda (Cliente, Produto, Quantidade)
A  Y  5
B   Z  6


Gostaria que a SQL retornasse todos os registros
da tabela cliente e venda, mas veja que não listou
o produto X.

Resultado:
A  Y  5
A  Z  0
B  Y  0
B  Z  6


Este exemplo acima esta bem simplicado,
na tabela cliente tem codigo, nome, endereço,
na tabela produto tem codigo, nome, preço,
no resultado vai mostrar todo estes dados.
Tenho que usar a tabela produto para
retornar o preço.




______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista