如何编写 mysql 查询以查找产品扩展分类
在讨论 mysql 查询的编写方法之前,让我们先回顾一下问题。我们需要从两个表(t_product 和 t_product_category)中查找产品,这些表通过 product_id 和 category_id 列关联。
解决方案
要找到满足条件的产品,我们可以使用以下查询:
SELECT p.* FROM t_product AS p LEFT JOIN t_product_category AS pc ON p.product_id = pc.product_id WHERE p.category_id IN (1,2) OR pc.category_id IN (1,2) GROUP BY p.product_id ORDER BY p.seq ASC, p.product_id DESC LIMIT 0, 20
让我们拆解一下查询:
order by p.seq asc, p.product_id desc 对结果按 seq 列升序排序,然后按 product_id 列降序排序。