我有这个问题:
SELECT DISTINCT brand_name FROM masterdata WHERE in_stock = '1' ORDER BY brand_name
它运作良好,但我得到的结果太多了。我如何限制这一点,而不仅仅是寻找不同的条目,它只会给我至少存在3次的不同条目(例如)?
基本上,如果列有此数据......
brand_name
==========
apple
banana
apple
apple
orange
banana
orange
orange
...我当前的查询将返回“apple,banana,orange”。如何获得它只返回“apple,orange”(忽略香蕉,因为它少于三次)?
如果重要的话,我正在使用PHP来构建查询。
谢谢!
答案 0 :(得分:3)
像这样(袖手旁观,未经测试):
SELECT brand_name
FROM masterdata
WHERE in_stock = '1'
GROUP BY brand_name
HAVING COUNT(*) >= 3
ORDER BY brand_name