MySQL中有一种简单的方法可以返回聚合结果行的数量吗?
例如:
SELECT `name`, SUM(`points`)
FROM `goals`
GROUP BY `name`
HAVING SUM(`points`) > 10
如果我在寻找一些独特的名字,如果可能的话,我怎么能实现这个目标?
例如,如果返回数据集是:
Player1 | 11
Player2 | 15
Player3 | 17
有没有办法返回结果数,这可能是三(3)?
答案 0 :(得分:0)
这是使用子查询的一个选项:
SELECT COUNT(*)
FROM (
SELECT `name`, SUM(`points`)
FROM `goals`
GROUP BY `name`
HAVING SUM(`points`) > 10
) t
答案 1 :(得分:0)
select count(*) as num_of_records
from
(
SELECT name
FROM goals
GROUP BY name
HAVING SUM(points) > 10
) tmp