MYSQL:如何在WHERE子句中使用分组SUM()的结果作为条件?

时间:2015-02-10 14:38:44

标签: mysql sum where

在我的TEAMS表中,其关系表>行为其播放器

每支球队有3名或更多球员 与团队关联的每个玩家都有一个分数列

我只需要检索没有积累300分或更高的玩家积分的TEAM

到目前为止我已经到了这一步:

enter image description here

问题在于它返回的结果集包含TEAMs表中的所有行。

enter image description here

如果SUM为>,如何使其返回结果?比如300?

我尝试添加:

**WHERE total_points >= '300'**

但很明显会返回“未知列”错误。

有什么想法吗?

PS 我可以通过PHP轻松获得我想要的东西>循环,但是在服务器资源上浪费这么多,只是为了得到一些符合条件的团队行加载数量。

2 个答案:

答案 0 :(得分:1)

尝试使用HAVING子句而不是WHERE

HAVING total_points >= 300

答案 1 :(得分:1)

使用having子句..它适用于分组。 (类似于哪里)

所以在小组投入总和(players.points)> 300

之后