在写测试数据的时候,为了获取符合某些特定要求的记录,必须过滤掉记录较低的数量并获取物料总数。
SELECT *, SUM(数量) as 总数量, count(物料号) as 物料条数 from 物料详表
WHERE 仓库ID = '1'
and `物料状态` = 1
GROUP BY 物料号
HAVING count(物料条数) > 2
如上所示,首先利用 GROUP BY 物料号,以物料号作为聚合的标准。
SUM(数量) as 总数量 是指,每一条记录都有对应的物料数量,将同物料号的数量一起加起来就是物料的总数量。
count(物料号) as 物料条数 是指,表中每含有一条这个物料号的记录,物料条数就会+1;
HAVING count(物料条数) > 2 是过滤掉所有物料条数小于2的物料。