Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Wilke1

select

Recommended Posts

ola pessoalessa select ,estatrazendo o mesmo produto com preços diferente ,teria alguma forma de resover isso . desde ja agradeço ajuda de vocesSELECT DP.CD_PRODUTO, TF.VL_PRODUTO,DP.QT_PEDIDA, DP.QT_PENDENTE, DP.CD_LOJA_ENTREGA, P.NM_PRODUTO FROM TB_PRODUTO P, TB_DISTRIBUICAO_PEDIDO DP,TB_ITEM_PEDIDO_TRANSFERENCIA TFWHERE DP.NU_PEDIDO_COMPRA = '852953005' AND DP.CD_LOJA_ENTREGA = '034' AND P.CD_PRODUTO = DP.CD_PRODUTO AND TF.CD_PRODUTO=DP.CD_PRODUTO AND P.CD_PRODUTO=TF.CD_PRODUTO ORDER BY P.NM_PRODUTO

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente fazer a relação do produto somente com a tabela TB_ITEM_PEDIDO_TRANSFERENCIA, visto que você relaciona o campo CD_PRODUTO com TB_ITEM_PEDIDO_TRANSFERENCIA.

Pessoalessa select era pra trazer somente os pedidos que foram so pra essa loja ,mas ainda continua pegando valores do pedido totaleu to fazendo assim mas ainda não tá batendo SELECT /*+ INDEX( DP CP_DISTRIBUICAO_PEDIDO)*/ DP.CD_PRODUTO, DP.QT_PEDIDA, DP.QT_PENDENTE, P.NM_PRODUTO,DP.QT_PEDIDA,TF.VL_CUSTO_LIQUIDO FROM TB_PRODUTO P, TB_DISTRIBUICAO_PEDIDO DP,TB_ITEM_PEDIDO_COMPRA TFWHERE DP.NU_PEDIDO_COMPRA = '852953005' AND DP.CD_LOJA_ENTREGA = '034' AND P.CD_PRODUTO = DP.CD_PRODUTO AND TF.CD_PRODUTO=P.CD_PRODUTO AND DP.CD_PRODUTO=TF.CD_PRODUTO AND DP.NU_PEDIDO_COMPRA=TF.NU_PEDIDO_COMPRA

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

 

Não entendi uma coisa, na primeira pergunta usou a tabeta TB_ITEM_PEDIDO_TRANSFERENCIA e no segundo post você usou a tabela TB_ITEM_PEDIDO_COMPRA, mas vou com a segunda vê se essa resolve.

 

SELECT /*+ INDEX( DP CP_DISTRIBUICAO_PEDIDO)*/   DP.CD_PRODUTO, DP.QT_PEDIDA, DP.QT_PENDENTE,    P.NM_PRODUTO, DP.QT_PEDIDA, TF.VL_CUSTO_LIQUIDO	FROM   TB_PRODUTO P,    TB_DISTRIBUICAO_PEDIDO DP,   TB_ITEM_PEDIDO_COMPRA TF   WHERE   P.CD_PRODUTO = CD.CD_PRODUTO AND    TF.CD_PRODUTO = CD.CD_PRODUTO AND   TF.NU_PEDIDO_COMPRA = DP.NU_PEDIDO_COMPRA AND   DP.CD_LOJA_ENTREGA = '034' AND   DP.NU_PEDIDO_COMPRA = '852953005'

Só uma dica: observe que eu mudei a ordem no WHERE, na verdade o compilador ler de baixo para cima, e a pesquisa que você ta fazendo é principalmente na tabela TB_DISTRIBUICAO_PEDIDO DP as outras são apenas referencia a ela. Dessa forma sua select trabalha melhor, e procure usar isso em todas as outras, ok ;)

 

Abs. Progr'amador.

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só uma dica: observe que eu mudei a ordem no WHERE, na verdade o compilador ler de baixo para cima,

Eita...essa eu nunca tinha visto...Legal... vou começar a pensar de cabeça pra baixo meus Selects... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Amigo eu verifiquei , e vi que eu estava colocando o campo errado no meu relatorio, o campo era vl_custo_liquido , so que ele fazia a soma geral dos item pedidos, por isso que o valor era muito alto, então eu peguei e coloquei o campo vl_custo_bruto , e deu certo , pelo fator de ele mostrar o valor unitario, ai eu somei os itens pedidos ai ficou oksó que agora eu tenho outra opção de ver os pedidos sem ser distribuidos , e agora ,ele amostra os valores do vl_custo_bruto ,sendo que só bate com vl_custo_liquido, tem como eu colocar uma opção na hora de imprimir?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só uma dica: observe que eu mudei a ordem no WHERE, na verdade o compilador ler de baixo para cima,

Eita...essa eu nunca tinha visto...Legal... vou começar a pensar de cabeça pra baixo meus Selects... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Amigo eu verifiquei , e vi que eu estava colocando o campo errado no meu relatorio, o campo era vl_custo_liquido , so que ele fazia a soma geral dos item pedidos, por isso que o valor era muito alto, então eu peguei e coloquei o campo vl_custo_bruto , e deu certo , pelo fator de ele mostrar o valor unitario, ai eu somei os itens pedidos ai ficou oksó que agora eu tenho outra opção de ver os pedidos sem ser distribuidos , e agora ,ele amostra os valores do vl_custo_bruto ,sendo que só bate com vl_custo_liquido, tem como eu colocar uma opção na hora de imprimir?
eu fiz assim e aparentemente deu certoIF QueryPedidoDistribuido.FieldByName('CD_LOJA_ENTREGA').AsString='030' THEN BEGIN rlpedidodistribuido.QRDBText2.DataField:='VL_CUSTO_LIQUIDO'; Rlpedidodistribuido.QRExpr1.Expression:='sum(querypedidodistribuido.vl_custo_liquido)'; end; IF QueryPedidoDistribuido.FieldByName('CD_LOJA_ENTREGA').AsString <>'030' THEN BEGIN Rlpedidodistribuido.QRDBText2.DataField:='TOTAL'; Rlpedidodistribuido.QRExpr1.Expression:='sum(querypedidodistribuido.TOTAL)'; end; end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eita...

 

essa eu nunca tinha visto...

 

Legal... vou começar a pensar de cabeça pra baixo meus Selects... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Olá Hugo,

Não sei se você ta só me zuando, mas você não tem que pensar de cabeça pra baixo não cara! é que na cláusula WHERE o compilador ler as condições dessa forma mesmo...

 

http://forum.imasters.com.br/public/style_emoticons/default/closedeyes.gif

 

Abs. Progr'amador.

Compartilhar este post


Link para o post
Compartilhar em outros sites

(Hugo Slepicka @ 06/02/2007 - 16:18) Imagem PostadaEita...

 

essa eu nunca tinha visto...

 

Legal... vou começar a pensar de cabeça pra baixo meus Selects... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Olá Hugo,

Não sei se você ta só me zuando, mas você não tem que pensar de cabeça pra baixo não cara! é que na cláusula WHERE o compilador ler as condições dessa forma mesmo...

 

http://forum.imasters.com.br/public/style_emoticons/default/closedeyes.gif

 

Abs. Progr'amador.

 

Putz, desculpe amigo... realmente não pensei no sentido ambiguo de minha colocação...

 

Realmente achei um fato muito interessante, ainda mais tratando-se de um assunto como a melhoria de velocidade em uma consulta...

 

Em momento algum pretendi fazer piada com a sua colocação amigo, se lhe passei esse sentido lhe peço desculpas...

 

Gostei muito de sua dica, e tentarei implementá-la em meus projetos futuros...

 

Espero que me entenda...

 

abraço...

 

Hugo. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Putz, desculpe amigo... realmente não pensei no sentido ambiguo de minha colocação...

 

Realmente achei um fato muito interessante, ainda mais tratando-se de um assunto como a melhoria de velocidade em uma consulta...

 

Em momento algum pretendi fazer piada com a sua colocação amigo, se lhe passei esse sentido lhe peço desculpas...

 

Gostei muito de sua dica, e tentarei implementá-la em meus projetos futuros...

 

Espero que me entenda...

 

abraço...

 

Hugo. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Opa!

eu que pesso descupa pela minha ignorância e por ter entendido mal!

 

passe uma borracha.

 

Abs, Progr'amador.

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.