Fórum Sql para cotacao de preços.. #56220

15/06/2006

0

Tenho uma tabela cotacao com os campos.
CODPROD
CODFORNEC
PRECO..

preciso de uma SQL, que retorne o menor preço de cada Produto e o respectivo fornecedor...

Tentei usar o Min(Preco), com group By CODPROD, mas ele nao retorna o Codigo do fornecedor... Se eu colocar CODFORNECC no group by, ele vai mostrar o mesmo produto varias vezes..

Como posso fazer isto mais rapidamente..


Sistemp

Sistemp

Responder

Posts

22/06/2006

Jonas_giron

select distinct (min(produtos.valor_custo))
, produtos.codigo
, produtos.codigo_fornecedor
from produtos
group by produtos.codigo
, produtos.codigo_fornecedor
, produtos.valor_custo


Responder

Gostei + 0

02/10/2009

Spleen

To com o mesmo problema que ele :/
e com certeza esse código aqui em cima ta errado..
Alguem pode dar um help?
se vc usar o MIN não pode colocar o fornecedor no GROUP
então como eu teria que fazer pra pegar o fornecedor relativo ao valor minimo?


Responder

Gostei + 0

02/10/2009

Afarias

Uma forma:


SELECT * FORM nome_tabela A
WHERE A.preco=(SELECT MIN(preco) FROM nome_tabela
WHERE codprod=A.codprod);


Neste caso, + de 1 fornecedor com preço mínimo igual para um mesmo produto poderão ser listados.

Esta solução não se preocupa com performance. É possível construir um procedimento com uma melhor performance, caso necessário.


T+


Responder

Gostei + 0

05/10/2009

Spleen

afarias...
Quando eu crescer eu quero ser igual a você DHASUIOHDAISUDH


Responder

Gostei + 0

05/10/2009

Spleen

Mas acabou que esse código não me serviu exatamente do jeito que eu queria..
Alguem pdoe me dar uma ideia inicial de como criar uma SP que faz esse cálculo?


Responder

Gostei + 0

05/10/2009

Afarias

E o q exatamente vc queria??


T+


Responder

Gostei + 0

05/10/2009

Spleen

é um cadastro de cotação igual o cara postou lá em cima...
Eu seleciono uma lista de produtos e a quantidade que eu quero de cada um deles..
Então eu mando essa lista pra determinados fornecedores e eles me retornam os preço..
Então eu passo pro sistema o preço que cada fornecedor me deu de cada produto..
O que eu quero exatamente é gerar um relatório com os menores preços de cada produto, e informa qual o fornecedor referente ao preço.

deu par entender?


Responder

Gostei + 0

05/10/2009

Afarias

Não sei se deu pra entender pq meu entendimento é q o SQL q passei retorna exatamente o q vc descreve.

Vc poderia dizer onde o resultado do SQL diverge do q vc espera?


T+


Responder

Gostei + 0

14/10/2009

Crash

Não sei se deu pra entender pq meu entendimento é q o SQL q passei retorna exatamente o q vc descreve. Vc poderia dizer onde o resultado do SQL diverge do q vc espera? T+


Eu acho que foi você quem entendeu errado... essa query ai não vai sim retornar o menor valor, porém, ele quer que retorne o menor valor para cada fornecedor.

Nesse caso deve-se fazer um processamento das informações. Usando procedure do Firebird ou no delphi.

t+


Responder

Gostei + 0

14/10/2009

Afarias

e quer que retorne o menor valor para cada fornecedor.


Isso é o q vc está dizendo. Já o q ele disse foi:


´reciso de uma SQL, que retorne o menor preço de cada Produto e o respectivo fornecedor... ´

que é bem diferente.


T+


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar