我对计数聚合功能感到困惑。
下面的句子是mysql,它没有groupby子句。 怎么可能呢?
SELECT
COUNT(1) AS cnt
FROM dual;
结果:1
当计数聚合函数被调用时,是否存在groupby子句的默认参数。
帮我解决问题。
答案 0 :(得分:7)
聚合查询中使用聚合函数,例如COUNT()
,SUM()
和AVG()
。此类查询根据汇总到结果集中单个行的行组计算值。
通常,聚合查询使用GROUP BY
来定义结果集中的行。对于数据中找到的GROUP BY
键的每个唯一组合,结果集都有一行。
如果此类查询没有GROUP BY
,则整个表将被视为一个组,并将其汇总为一行。顺便说一下,即使表中没有行也是如此。结果将是0
。