Falta pouco!

0 dias

0 horas

0 min

0 seg

1
resposta

[Dúvida] 08 Mão na massa: hora da prática

No exercício 8 ( Recupere os nomes dos produtos que estão em menos de 15 pedidos) a resolução do orientador é:

SELECT p.nome
FROM produtos AS p
INNER JOIN itensPedido AS ip
ON p.id = IP.idProduto
GROUP BY p.nome
HAVING COUNT(ip.idPedido) < 15;

Porém fui dar um double check no resultado com a seguinte query:

SELECT p.nome, ip.idpedido, ip.idproduto from itenspedidos ip
join Produtos p on ip.idproduto = p.id
order by p.nome

e notei que o resultado da query passada pelo orientador não condiz com os dados da planilha, visto que o produto 'Baguete de Presunto' aparece 46 vezes.

Para resolver o exercicio fiz a seguinte query:

SELECT p.nome, p.id from Produtos p
join itenspedidos ip on p.id = ip.idproduto
group by p.id
HAVING count(p.id) < 15

e obtive o seguinte resultado:
'Cappuccino' e 'Salada de Frutas'

Fiz alguma coisa errada para encontrar meu resultado?

1 resposta

Olá, Guerreiro.emmanuel, tudo bem?

Então... eu executei a consulta da opinião do instrutor e não me foi retornado o 'Baguete de Presunto', como mostro no print abaixo:

Captura de tela de uma interface de execução de consultas SQL. No editor, aparece o código:SELECT p.nome
FROM produtos AS p
INNER JOIN itenspedidos AS ip
ON p.id = ip.idproduto
GROUP BY p.nome
HAVING COUNT(ip.idPedido) < 15;
baixo, a tabela de resultados mostra a coluna nome com os seguintes produtos listados: Batido de Morango, Cappuccino, Cappuccino Gelado, Chá Verde, Latte Macchiato, Salada de Atum, Salada de Frutas, Smoothie de Manga, Tarte Tatin de Maçã e Tiramisu.

Além disso, ao executar a sua query, obtive a mesma lista de produtos acima acrescido da informação do id.

Peço então que verifique se os dados que você está utilizando não possuem alguma diferença em relação ao dataset disponibilizado no curso, como linhas duplicadas ou registros inconsistentes. Isso pode alterar o resultado final.

Espero ter ajudado.

Qualquer dúvida que surgir, compartilhe no fórum. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!