Fórum Consulta no MySQL - Buscando menor Preço #581398
15/05/2017
0
Estou tendo dificuldades em criar uma consulta no banco de dados MySQL para buscar dígamos vários produtos ao mesmo tempo com seus respectivos menores preços. Por exemplo, quero consultar os produtos Pro1 e Pro2 com os códigos 5555 e 6666, já procurando qual deles tem o menor preço.
TABELA: produtos
id ---- nome ---- codigo
1 ----- Pro1 ----- 5555
2 ----- Pro2 ----- 6666
3 ----- Pro3 ----- 7777
TABELA: lojas
id ---- nome
1 ----- Dália
2 ----- Desco
3 ----- Bergamaschi
TABELA: produtos_precos
id ---- id_produto ---- preco ---- id_loja
1 ---------- 1 ----------- 29,90 ------ 1
2 ---------- 1 ----------- 25,90 ------ 2
3 ---------- 1 ----------- 23,90 ------ 3
4 ---------- 2 ----------- 32,90 ------ 1
5 ---------- 2 ----------- 35,90 ------ 2
6 ---------- 2 ----------- 43,90 ------ 3
7 ---------- 3 ----------- 12,90 ------ 1
8 ---------- 3 ----------- 13,40 ------ 2
9 ---------- 3 ----------- 15,20 ------ 3
SELECT * FROM produtos WHERE codigo IN (5555, 6666)
O SQL acima retornaria retornaria os dois produtos dos códigos citados. A pergunta é como fazer para na mesma consulta buscar o menor preço de cada produto (vindo da tabela produtos_precos).
Rafael Casanova
Curtir tópico
+ 0Post mais votado
15/05/2017
O menor preço independente da loja?
Se for, é asim:
SELECT id_produto, MIN(preco) AS MENOR_PRECO FROM produtos_precos GROUP BY id_produto
Ai caso você queira apenas aqueles 2 produtos, você pode fazer um INNER jJOIN com a tabela produtos, e usar o seu where
WHERE codigo IN (5555, 6666)
Espero ter ajudado.
Grande abraço
Luiz Santos
Gostei + 2
Mais Posts
16/05/2017
Rafael Casanova
Acho que estava cometendo algum erro de sintaxe =D
Gostei + 0
16/05/2017
Luiz Santos
É normal.
As vezes ficamos tão bitolados no código que é preciso alguém de fora pra mostrar um erro qualquer que estamos deixando passar.
Acontece com todo mundo, independente da linguagem.
Grande abs
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)