Fórum SQL #194757
13/11/2003
0
Bom dia.
Tenho uma tabela onde gravo quanto custa um determina produto para cada fornecedor ... tipo assim
[b:9544f74085]CDCOTATOFORN[/b:9544f74085]
[i:9544f74085]CODFORN
CODBARRA
QTDE
PRECOVEND
PRECOTOTAL[/i:9544f74085]
...
Preciso mostrar qual fornecedor vende os produtos mais baratos
CODFORN - CODBARRA - PRECOTOT
.
[b:9544f74085]2 ------- 123 -------------- 0,03
2 ------- 456 -------------- 0,02
3 ------- 123 -------------- 0,02
3 ------- 456 -------------- 0,03 [/b:9544f74085]
E ele deve me mostrar:
[b:9544f74085]2 ------- 456 -------------- 0,02
3 ------- 123 -------------- 0,02[/b:9544f74085]
fiz o seguinte SQL
Mas não deu certo, ele lista todos os produtos cotado =(
Já com esse outro SQL Consegui apensa o produt mais barato de todos.
Alguém pode me ajuda????
Valeuuuuu :)
[/b]
Tenho uma tabela onde gravo quanto custa um determina produto para cada fornecedor ... tipo assim
[b:9544f74085]CDCOTATOFORN[/b:9544f74085]
[i:9544f74085]CODFORN
CODBARRA
QTDE
PRECOVEND
PRECOTOTAL[/i:9544f74085]
...
Preciso mostrar qual fornecedor vende os produtos mais baratos
CODFORN - CODBARRA - PRECOTOT
.
[b:9544f74085]2 ------- 123 -------------- 0,03
2 ------- 456 -------------- 0,02
3 ------- 123 -------------- 0,02
3 ------- 456 -------------- 0,03 [/b:9544f74085]
E ele deve me mostrar:
[b:9544f74085]2 ------- 456 -------------- 0,02
3 ------- 123 -------------- 0,02[/b:9544f74085]
fiz o seguinte SQL
select MIN(CO.PRECOTOT) as MENORVALOR, CO.CODBARRA,CO.PRECOVEND,CO.DESCRICAO, CO.QTDE, CO.CODFORN,F.CODFORN, F.FANTASIA FROM CDCOTADOFORN CO, CDFORNECEDOR F WHERE F.CODFORN=CO.CODFORN GROUP BY F.CODFORN, CO.CODBARRA,CO.PRECOVEND,CO.DESCRICAO, CO.QTDE, CO.CODCOTACAO,CO.CODFORN,F.FANTASIA
Mas não deu certo, ele lista todos os produtos cotado =(
Já com esse outro SQL Consegui apensa o produt mais barato de todos.
Select MIN(CO.PRECOTOT) as MENORVALOR, CO.CODBARRA,CO.PRECOVEND,CO.DESCRICAO, CO.QTDE, CO.CODFORN,F.CODFORN, F.FANTASIA FROM CDCOTADOFORN CO, CDFORNECEDOR F WHERE F.CODFORN=CO.CODFORN and CO.PRECOTOT = (SELECT MIN(PRECOTOT) FROM CDCOTADOFORN WHERE F.CODFORN=CO.CODFORN) GROUP BY CO.CODBARRA,F.CODFORN,CO.PRECOVEND,CO.DESCRICAO, CO.QTDE, CO.CODCOTACAO,CO.CODFORN,F.FANTASIA
Alguém pode me ajuda????
Valeuuuuu :)
[/b]
Fer
Curtir tópico
+ 0
Responder
Posts
13/11/2003
Delphistar
tenta assim:
SELECT CO.CODBARRA, CO.PRECOVEND, CO.DESCRICAO, CO.QTDE, CO.PRECOTOT, CO.CODFORN, F.CODFORN, F.FANTASIA
FROM CDCOTADOFORN CO, CDFORNECEDOR F
WHERE F.CODFORN=CO.CODFORN AND
CO.PRECOTOT = (SELECT MIN(PRECOTOT) FROM CDCOTADOFORN)
desse jeito sera listado todos os produtos mais baratos
SELECT CO.CODBARRA, CO.PRECOVEND, CO.DESCRICAO, CO.QTDE, CO.PRECOTOT, CO.CODFORN, F.CODFORN, F.FANTASIA
FROM CDCOTADOFORN CO, CDFORNECEDOR F
WHERE F.CODFORN=CO.CODFORN AND
CO.PRECOTOT = (SELECT MIN(PRECOTOT) FROM CDCOTADOFORN)
desse jeito sera listado todos os produtos mais baratos
Responder
Gostei + 0
14/11/2003
Delphistar
corrigindo, a sub-query correta eh:
SELECT MIN(PRECOTOT) FROM CDCOTADOFORN WHERE CODBARRA = CO.CODBARRA
SELECT MIN(PRECOTOT) FROM CDCOTADOFORN WHERE CODBARRA = CO.CODBARRA
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)