MySQL只选择有孩子或子类别的类别

时间:2017-07-20 09:00:18

标签: mysql

我想只获得在此类别中包含子类别或产品的类别。因此不应显示空类别。

这是我的最后一次尝试:

SELECT *
        FROM categories as c
        WHERE c.parent = '3' # dynamic $id
        AND c.visible = 'yes'
        AND (
                (
                    SELECT count(*)
                    FROM products
                    WHERE products.categorie = c.id
                ) > 0
                OR
                (
                    SELECT count(*)
                    FROM categories as b
                    #WHERE b.parent = c.id
                ) > 0
            )
        ORDER BY position DESC, `name` ASC

categories.id是类别表中的主键 categories.parent包含来自父类别的id (primary key) products.categorie包含来自其父级类别的id (primary key) categories.visible是手动设置的属性,可以忽略。

提前谢谢

1 个答案:

答案 0 :(得分:0)

这是解决方案:

<a href="javascript:$(this).closest('form').submit()"><li class="fa fa-check-square-o" aria-hidden="true"></li></a>