Categoria, listar subcategorias só que tenham produtos cadastrados - MySQL - Fórum iMasters
By luiscarlos5046, May 16, 2018 in MySQL
luiscarlos5046 3
Nesta Query eu listo todos os subgrupos(subcategorias) de um grupo(categoria), mas gostaria de não exibir os subgrupos vazios.... alguém tem algum exemplo pra me passar?
SELECT g.*, sg.id AS idsg, sg.subgrupo
FROM grupo g, subgrupo sg, produtos p
WHERE sg.id = p.id_subgrupo
AND sg.id_grupo = 1
GROUP BY sg.id
SELECT grupo.*, subgrupo.id AS idsg, subgrupo.subgrupo
FROM grupo
INNER JOIN subgrupo ON subgrupo.id_grupo = grupo.id
WHERE grupo.id = 1
Ambos funcionam da mesma forma, mas traz uma subcategoria cuja não existem produtos cadastrados (Vazios)
Alguém pode me dar uma luz de como fazer isso?
Luis, usando o group by você pode filtrar apenas aqueles que tem registros através do having.
Estou quebrando a cabeça para fazer com que o php liste as categorias e sub-categorias.do menu da página que estou fazendo.
A estrutura do menu deve ser esta
Subcategoria Subcategoria Subcategoria Categoria 2
Subcategoria Subcategoria Subcategoria Categoria 3
Subcategoria Subcategoria Subcategoria ==============================
Eu fiz a consulta e fiz com que as categorias sejam listadas, porém não estou conseguindo fazer listar abaixo de cada categoria suas respectivas sub-categorias.
Segue abaixo o código que estou usando para listar as categorias.
$sql = mysqli_query($conn, "SELECT * FROM categoria ORDER BY categoria ASC");
echo '<li><span class="opener">' . $dados['categoria'] . '</span><ul>';
echo '<li><a href="#">subcategoria</a></li>'; //E justamente nesta linha que preciso fazer aparecer as subcategorias que estão na tebela "sub_categoria"