【发布时间】:2017-10-03 09:24:47
【问题描述】:
如果销售人员供应的零件总数超过 1000 件,则计算每个供应商的总销售数量并得到销售人员的姓名。
表信息:
供应商 {s_num, s_name, status, city}
Spj {s_num, p_num, j_num, 数量}
这就是我所拥有的:
SELECT s_name, SUM(qty) AS sum
FROM Supplier, Spj
WHERE Supplier.s_num = Spj.s_num
AND qty > 1000
GROUP BY s_name;
我认为我的错误在这一行:
AND qty > 1000
也许我错误地使用了“GROUP BY”...
没有供应商数量超过 800 个,所以我得到一个空白结果。
我想测试一下:
"sum of quantity for each supplier" > 1000
【问题讨论】:
-
将
AND qty > 1000 GROUP BY s_name替换为GROUP BY s_name HAVING(qty > 1000)。 -
WHERE vs HAVING的可能重复
-
SQL 中列名不明确的查询错误
标签: mysql