I have this SELECT
that takes the 6 best selling products:
SELECT IdProduto, SUM(QtdProdutoPedido) as QtdProdutoPedido FROM tb_pedidoproduto
GROUP BY IdProduto ORDER BY QtdProdutoPedido DESC LIMIT 6
I wanted a SELECT
to show all other products registered except those shown with SELECT
above.
I tried to use NOT EXIST
:
SELECT * FROM 'tb_produto' WHERE NOT EXISTS
(SELECT IdProduto, SUM(QtdProdutoPedido) as QtdProdutoPedido FROM tb_pedidoproduto
GROUP BY IdProduto ORDER BY QtdProdutoPedido DESC LIMIT 6)
&& IdCategoria = 2 ORDER BY IdProduto ASC
But I could not mount it. If you have a way to do it in PHP it can be too.
I tried to use NOT EXISTS but it is bringing the results that do not exist in the table tb_pedidproduct, I believe that LIMIT is not working:
SELECT produto.IdProduto, produto.NomeProduto, produto.IdCategoria, produto.Imagem,
produto.QtdMedida, produto.ValorProduto, produto.IdUnidadeMedida, produto.DescricaoProduto
FROM tb_produto as produto WHERE produto.IdCategoria = '2' AND NOT EXISTS (
SELECT pedidoproduto.IdProduto, SUM(pedidoproduto.QtdProdutoPedido) as QtdProdutoPedido
FROM tb_pedidoproduto as pedidoproduto
WHERE produto.IdCategoria = '2'
AND produto.IdProduto = pedidoproduto.IdProduto
GROUP BY pedidoproduto.IdProduto ORDER BY QtdProdutoPedido DESC LIMIT 6)
ORDER BY produto.IdProduto ASC
Basically what I need is to subtract the results of the first SELECT with those of the second one, I tried to do a SELECT using the operand "-" but it did not work as well. Someone help me plss. . .