我正在尝试创建一个动态查询,该查询连接我的表并过滤所选过滤器。在我的示例中,products_bind_filters是属于每个产品的过滤器项。
我试图在一个结果中找到具有以下条件作为示例的产品:
- 红色,绿色或蓝色的产品
- 中小型也有
我的查询是:
SELECT *,
p.name as productName,
c.name as categoryName,
p.price as productPrice,
p.hookName as productHook,
c.hookName as categoryHook,
p.imageMain as productThumb
FROM products p
JOIN products_bind_category pbc ON pbc.productsId = p.productsId
JOIN category c ON pbc.categoryId = c.categoryId
JOIN products_bind_value pbv ON pbv.productsId = p.productsId
WHERE p.productsId != '0'
AND pbc.categoryId = '10'
AND (pbv.valueId = '54' ) AND (pbv.valueId = '167' OR pbv.valueId = '186' OR pbv.valueId = '175' )
GROUP BY p.productsId
ORDER BY p.Price ASC
但是,它没有返回正确的结果。有些产品符合标准,但未显示它们。
有任何想法吗?
我确实尝试过使用IN查询,但是也没有用。