ajuda com select
olá Amigos, estou com uma duvida e naum consegui resolver ainda, tenho 5 tabelas :
[Cliente]
id_cliente *
nome_cliente
[Venda]
id_venda *
id_cliente
[ItensVenda]
idvenda_itensvenda *
produto *
qtde *
...
[Consignacao]
id_consignacao *
id_cliente
[ItensConsignacao]
idconsignacao_itensconsignacao *
produto *
qtde *
...
Bom, preciso fazer um select onde ele me retorne os produtos que um determinado cliente comprou ou pegou em consignação. Espero q vcs consiga entender. Agradeço desde já.
[Cliente]
id_cliente *
nome_cliente
[Venda]
id_venda *
id_cliente
[ItensVenda]
idvenda_itensvenda *
produto *
qtde *
...
[Consignacao]
id_consignacao *
id_cliente
[ItensConsignacao]
idconsignacao_itensconsignacao *
produto *
qtde *
...
Bom, preciso fazer um select onde ele me retorne os produtos que um determinado cliente comprou ou pegou em consignação. Espero q vcs consiga entender. Agradeço desde já.
Sownray
Curtidas 0
Respostas
Aroldo Zanela
06/02/2008
Colega,
Qual é a chave estrangeira nas tabelas de itens que as associam as tabelas mestre?
Qual é a chave estrangeira nas tabelas de itens que as associam as tabelas mestre?
GOSTEI 0
Andepunk
06/02/2008
primeiro voce tem que arrumar as tabelas para poder fazer o relacionamento
pode ser assim:
[Cliente]
CLI_CODIGO
CLI_NOME
...
[Produtos]
PRO_CODIGO
PRO_DESCRICAO
PRO_ATACADO
PRO_VAREJO
PRO_ESTOQUE
...
[Venda]
VEN_CODIGO
...
[ItensVenda]
COD_VENDA
ITE_CODIGO
COD_CLIENTE
COD_PRODUTO
ITE_QTDE
ITE_PRECO
....
[Consignacao]
CON_CODIGO
...
[ItensConsignacao]
COD_CONSIGINACAO
ITE_CONSIGINACAO
COD_CLIENTE
COD_PRODUTO
ITE_QTDE
ITE_PRECO
....
DAI FAZ ASSIM
SELECT CLI_NOME, PRO_DESCRICAO, SUM(ITE_QTDE) AS QTDE, ITE_PRECO, SUM(ITE_QTDE)*ITE_PRECO AS TOTAL FROM CLIENTES, VENDAS, ITENSVENDAS, PRODUTOS
WHERE CLI_CODIGO=COD_CLIENTE AND COD_PRODUTO=PRO_CODIGO
VEN_CODIGO=COD_VENDA;
ASSIM VOCE TEM OS VALORES DAS VENDAS.
SELECT CLI_NOME, PRO_DESCRICAO, SUM(ITE_QTDE) AS QTDE, ITE_PRECO, SUM(ITE_QTDE)*ITE_PRECO AS TOTAL FROM CLIENTES, CONSIGNACAO, ITENSCONSIGNACAO, PRODUTOS
WHERE CLI_CODIGO=COD_CLIENTE AND COD_PRODUTO=PRO_CODIGO
CON_CODIGO=COD_CONSIGNACAO;
ASSIM VOCE TEM OS VALORES DAS CONSIGNACAO.
DEPOIS SO VER QUAL SQL RETORNA ALGUM VALOR E MOSTRAR.
pode ser assim:
[Cliente]
CLI_CODIGO
CLI_NOME
...
[Produtos]
PRO_CODIGO
PRO_DESCRICAO
PRO_ATACADO
PRO_VAREJO
PRO_ESTOQUE
...
[Venda]
VEN_CODIGO
...
[ItensVenda]
COD_VENDA
ITE_CODIGO
COD_CLIENTE
COD_PRODUTO
ITE_QTDE
ITE_PRECO
....
[Consignacao]
CON_CODIGO
...
[ItensConsignacao]
COD_CONSIGINACAO
ITE_CONSIGINACAO
COD_CLIENTE
COD_PRODUTO
ITE_QTDE
ITE_PRECO
....
DAI FAZ ASSIM
SELECT CLI_NOME, PRO_DESCRICAO, SUM(ITE_QTDE) AS QTDE, ITE_PRECO, SUM(ITE_QTDE)*ITE_PRECO AS TOTAL FROM CLIENTES, VENDAS, ITENSVENDAS, PRODUTOS
WHERE CLI_CODIGO=COD_CLIENTE AND COD_PRODUTO=PRO_CODIGO
VEN_CODIGO=COD_VENDA;
ASSIM VOCE TEM OS VALORES DAS VENDAS.
SELECT CLI_NOME, PRO_DESCRICAO, SUM(ITE_QTDE) AS QTDE, ITE_PRECO, SUM(ITE_QTDE)*ITE_PRECO AS TOTAL FROM CLIENTES, CONSIGNACAO, ITENSCONSIGNACAO, PRODUTOS
WHERE CLI_CODIGO=COD_CLIENTE AND COD_PRODUTO=PRO_CODIGO
CON_CODIGO=COD_CONSIGNACAO;
ASSIM VOCE TEM OS VALORES DAS CONSIGNACAO.
DEPOIS SO VER QUAL SQL RETORNA ALGUM VALOR E MOSTRAR.
GOSTEI 0
Andepunk
06/02/2008
primeiro voce tem que arrumar as tabelas para poder fazer o relacionamento
pode ser assim:
[Cliente]
CLI_CODIGO
CLI_NOME
...
[Produtos]
PRO_CODIGO
PRO_DESCRICAO
PRO_ATACADO
PRO_VAREJO
PRO_ESTOQUE
...
[Venda]
VEN_CODIGO
...
[ItensVenda]
COD_VENDA
ITE_CODIGO
COD_CLIENTE
COD_PRODUTO
ITE_QTDE
ITE_PRECO
....
[Consignacao]
CON_CODIGO
...
[ItensConsignacao]
COD_CONSIGINACAO
ITE_CONSIGINACAO
COD_CLIENTE
COD_PRODUTO
ITE_QTDE
ITE_PRECO
....
DAI FAZ ASSIM
SELECT CLI_NOME, PRO_DESCRICAO, SUM(ITE_QTDE) AS QTDE, ITE_PRECO, SUM(ITE_QTDE)*ITE_PRECO AS TOTAL FROM CLIENTES, VENDAS, ITENSVENDAS, PRODUTOS
WHERE CLI_CODIGO=COD_CLIENTE AND COD_PRODUTO=PRO_CODIGO
AND VEN_CODIGO=COD_VENDA AND COD_CLIENTE=:COD_CLIENTE;
ASSIM VOCE TEM OS VALORES DAS VENDAS.
SELECT CLI_NOME, PRO_DESCRICAO, SUM(ITE_QTDE) AS QTDE, ITE_PRECO, SUM(ITE_QTDE)*ITE_PRECO AS TOTAL FROM CLIENTES, CONSIGNACAO, ITENSCONSIGNACAO, PRODUTOS
WHERE CLI_CODIGO=COD_CLIENTE AND COD_PRODUTO=PRO_CODIGO
AND CON_CODIGO=COD_CONSIGNACAO AND COD_CLIENTE=:COD_CLIENTE;;
ASSIM VOCE TEM OS VALORES DAS CONSIGNACAO.
DEPOIS SO VER QUAL SQL RETORNA ALGUM VALOR E MOSTRAR.
AI TEM QUE VER PELO QUE VOCE QR MOSTRAR PELO CLIENTE PRODUTO VENDA, CONSIGNACAO E AI VAI QQ DUVIDA PEGUNTA AEW... ALI ESTA PELO COD_CLIENTE SO FALTA PASSAR O PARAMETRO PRO SQL E DEU PRA BOLA
GOSTEI 0