mysql - 很难解释,mysql新手

标签 mysql

计算每个供应商的总销售数量,如果销售人员供应的零件总数超过 1000 件,则获取销售人员的姓名。

表格信息:

供应商{s_num、s_name、状态、城市}

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

最佳答案

使用 HAVING 访问 group by 子句后的聚合结果:

SELECT s_name, SUM(qty) AS sum
FROM Supplier, Spj
WHERE Supplier.s_num = Spj.s_num
GROUP BY s_name
HAVING qty > 1000;

参见this post有关拥有与何处的更多信息。

关于mysql - 很难解释,mysql新手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43795741/

相关文章:

如果所有值不存在于同一个表中,则 mysql 更新,否则什么也不存在

php - 如何使我的表格单元格自动适应 Bootstrap 3 中的内容?

sql - 多个表中的唯一 ID [MySQL]

php - 如何使用 php 下载和上传 SQL 数据库为 .sql 文件?

mysql - MySQL触发语法错误

mysql - 转义拉丁字符以使用 perl 插入和获取数据库

mysql - 在 mysql 的 Select If 条件中使用更新查询

mysql - 临时表不存在错误

php - 无法从表中选择,但我可以插入和创建?

php - Paypal IPN 变量未添加和更新