| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 10:46:16
|
felipe_thrash
JavaGuru
![[Avatar]](/images/avatar/0594763bf6171668f8bc4cd79ebcbd63.jpg)
Membro desde: 02/07/2007 13:36:02
Mensagens: 240
Localização: Brasil
Offline
|
Galera...
no join ( na mãozona mesmo)
pegamos para igualar só primary keys, (seria mais trabalhoso pro banco !?)
ou primary keys e foreign keys ??? ( mais trabalho pro desenvolvedor !!!)
valews!
|
Need money for a f*%#ing beer!
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 10:51:20
|
tnaires
GUJ Master
![[Avatar]](/images/avatar/5f6371c9126149517d9ba475def53139.png)
Membro desde: 22/12/2003 08:05:58
Mensagens: 1678
Localização: Porto Alegre/RS - Natal/RN
Offline
|
Em JOINs, você sempre iguala chaves primárias de uma tabela com chaves estrangeiras da outra.
Exemplo:
Pessoa
- idPessoa
- Nome
ContatoPessoa
- idContato
- idPessoa
- Telefone
SELECT p.Nome, cp.Telefone
FROM Pessoa p
INNER JOIN ContatoPessoa cp ON cp.idPessoa = p.idPessoa
Abraços
This message was edited 1 time. Last update was at 18/01/2008 10:51:56
|
Tarso Nunes Aires
Blog - http://cabritin.wordpress.com/
Delicious - http://delicious.com/tnaires
Twitter - @tnaires
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 11:38:48
|
felipe_thrash
JavaGuru
![[Avatar]](/images/avatar/0594763bf6171668f8bc4cd79ebcbd63.jpg)
Membro desde: 02/07/2007 13:36:02
Mensagens: 240
Localização: Brasil
Offline
|
pois é... mas olha só... como o pessoal faz aki..
não posso fazer assim... não posso filtrar loj_loja e ven_venda ao mesmo tempo...
tem q ser uma ou outra! senão o maldito nao aceita!
teria outra solução!?
|
Need money for a f*%#ing beer!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 11:41:24
|
tnaires
GUJ Master
![[Avatar]](/images/avatar/5f6371c9126149517d9ba475def53139.png)
Membro desde: 22/12/2003 08:05:58
Mensagens: 1678
Localização: Porto Alegre/RS - Natal/RN
Offline
|
Coloque a estrutura das tabelas envolvidas e dê mais detalhes sobre o que você precisa que essa consulta retorne.
|
Tarso Nunes Aires
Blog - http://cabritin.wordpress.com/
Delicious - http://delicious.com/tnaires
Twitter - @tnaires
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 11:51:47
|
felipe_thrash
JavaGuru
![[Avatar]](/images/avatar/0594763bf6171668f8bc4cd79ebcbd63.jpg)
Membro desde: 02/07/2007 13:36:02
Mensagens: 240
Localização: Brasil
Offline
|
pois é.. os campos são PK...
cliente
----------
loj_loja - PK
cli_cliente - PK
venda
----------
loj_loja - PK
ven_venda - PK
ponte
----------
loj_loja - PK
ven_venda - PK
ponte_d_titulo
-------------------
loj_loja - PK
ven_venda - PK
como to fazendo um relatorio no iReport.. e são muitos registros....
ta demorando demais...
daí me falaram pra filtrar primary keys... q sairia + rapido
estou em dúvida em proceder....
aki ele nao roda, quando filtro loj_loja e ven_venda juntos...
só separadamente...
|
Need money for a f*%#ing beer!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 13:09:00
|
alexeyh
Smalltalk
Membro desde: 20/04/2006 12:47:27
Mensagens: 4
Offline
|
teste
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 14:12:15
|
felipe_thrash
JavaGuru
![[Avatar]](/images/avatar/0594763bf6171668f8bc4cd79ebcbd63.jpg)
Membro desde: 02/07/2007 13:36:02
Mensagens: 240
Localização: Brasil
Offline
|
!?
teste...
ja testei!!!
não funfa de jeito nenhum...
|
Need money for a f*%#ing beer!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 16:53:54
|
DaviPiala
Virtual Machine Man
Membro desde: 17/08/2007 19:17:35
Mensagens: 598
Localização: São Paulo
Offline
|
Felipe,
Esse seu modelo está estranho!
Pelo que entendi não tem como você implementar um relacionamento entre a venda e o cliente.
Veja se o seu modelo responde essa pergunta, que isso que está faltando na sua base.
This message was edited 1 time. Last update was at 18/01/2008 16:55:08
|
Si temi more regat
Efamima dove tore
Infata dio re
Infa lati plastire |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 17:05:20
|
DaviPiala
Virtual Machine Man
Membro desde: 17/08/2007 19:17:35
Mensagens: 598
Localização: São Paulo
Offline
|
Kra posta pra mim qual o resultado que você quer.
Exemplo:
Totalizar vendas por loja
Todas as vendas de uma loja
Obs: Teu modelo não permite relacionar venda x cliente
|
Si temi more regat
Efamima dove tore
Infata dio re
Infa lati plastire |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 17:42:06
|
felipe_thrash
JavaGuru
![[Avatar]](/images/avatar/0594763bf6171668f8bc4cd79ebcbd63.jpg)
Membro desde: 02/07/2007 13:36:02
Mensagens: 240
Localização: Brasil
Offline
|
tudo sobre um cliente e o q comprou (futuramente vou implantar) através de um numero de venda
no caso --> ven_venda = 13661
meu problema são os filtros.... aaaaafffffi
so quando defino a loja = 154 tb... é q vem um unico registro
tirando ela ainda da pau...
mexer com select é coisa do demo... principalmente com umas tabelas malucas dessas...
|
Need money for a f*%#ing beer!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2008 22:13:59
|
Dieval Guizelini
Virtual Machine Man
![[Avatar]](/images/avatar/9fc92b9c69b711dcb880ccb743fc6f06.jpg)
Membro desde: 05/07/2006 14:39:44
Mensagens: 570
Localização: Curitiba - PR
Offline
|
acho que você está utilizando duas relações que estão sendo excludentes:
SELECT cc.loj_loja,
cc.cli_cliente,
cc.cic_cep,
cc.cli_nome,
cc.cli_cpf_cgc,
cc.cli_endereco,
vv.ven_venda,
vv.ven_data,
vv.ven_valor,
vv.ven_desc
--vv.cli_cliente,
--fpg.loj_loja,
--fpg.ven_venda,
--fpg.fve_codigo,
--pp.pes_codigo,
--pp.pes_cidade,
--pp.pes_uf
FROM greletro.cliente cc
LEFT JOIN venda vv ON cc.loj_loja = vv.loj_loja and cc.cli_cliente = vv.cli_cliente
LEFT JOIN ponte_eletro fpg ON vv.loj_loja = fpg.loj_loja and vv.ven_venda = fpg.ven_venda
LEFT JOIN pessoa pp ON pp.emp_codigo = cc.loj_loja
LEFT JOIN cliente_nome cn ON pp.pes_codigo = cn.pes_codigo <<----- aqui acho que deve ter uma relacao com cc
LEFT JOIN asa_venda fv ON fpg.fve_codigo = fv.fve_codigo
--AND vv.loj_loja = 154
AND vv.ven_venda = 13661
loja e pessoa.
Tente pensar nesse modelo segundo a tabela fato (na estrutura de cubos, normalmente desnormalizada e pode ser uma view em seu sistema ou uma subquery).
Identifique entre as tabelas quais são inner join e quais são outer, você fez tudo como se fosse inner, e talvez não seja.
Por exemplo os clientes que nunca compraram ou que a última compra já está no arquivo morto e as querys nada tem a retornar.
ai, voce pode pensar em usar subquerys e fazer a relação com elas, exemplo:
select ...
from
(select ... from pessoa,cliente) as cc
left join venda vv on cc.alguma_coisa = vv.alguma coisa
deixe o where apenas para os filtros, é mais fácil fazer combinações com OR, que acho que é o que você quer.
que banco você está utilizando?
fw
This message was edited 1 time. Last update was at 18/01/2008 22:17:12
|
Sun Certified Java Programmer 5.0 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/01/2008 14:02:05
|
DaviPiala
Virtual Machine Man
Membro desde: 17/08/2007 19:17:35
Mensagens: 598
Localização: São Paulo
Offline
|
Acho que no seu caso todos os clientes já necessariamente já efetuaram uma compra isso?
Se for essa questão, certamente você só precisaria de uma query simples como essa.
Primeiro,
Selecione todos os clientes:
Segundo,
Selecionando todas as vendas de cada cliente:
Terceiro,
Descobrindo em quais lojas as vendas de cada cliente foram realizadas:
|
Si temi more regat
Efamima dove tore
Infata dio re
Infa lati plastire |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/01/2008 16:32:31
|
felipe_thrash
JavaGuru
![[Avatar]](/images/avatar/0594763bf6171668f8bc4cd79ebcbd63.jpg)
Membro desde: 02/07/2007 13:36:02
Mensagens: 240
Localização: Brasil
Offline
|
sim sim é isso mesmo!
o filtro é o mais dificil do select.... se mão fizer direito, ele multiplica as informações
Obrigado a todos!
|
Need money for a f*%#ing beer!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/01/2008 13:42:24
|
truck1n
Java Ninja
Membro desde: 26/04/2006 11:41:05
Mensagens: 296
Localização: São Paulo
Offline
|
Qual banco está utilizando?
|
Get Rich Or Die Trying |
|
|
 |
|
|