gpt4 book ai didi

MySQL - GROUP BY 更改结果

转载 作者:行者123 更新时间:2023-11-30 01:15:06 25 4
gpt4 key购买 nike

请帮我解释为什么添加 GROUP BY 子句会更改查询结果。其他条件保持不变,删除 GROUP BY 子句将产生与添加 GROUP BY 子句不同的结果。

在我看来,GROUP BY 只是按字段对结果进行分组,而不是改变计数。

我需要按 table2.name 组织数据,并获取每个数据的计数

SELECT table2.name, COUNT(DISTINCT(op.id))
FROM op INNER JOIN table1 ON table1.EID = op.ID
INNER JOIN table3 ON table3.id = table1.jobid
INNER JOIN table2 ON table2.id = table3.CatID
WHERE op.ActiveStartDate <= NOW()
AND op.ActiveEndDate >= NOW()
GROUP BY table2.name
ORDER BY COUNT(*) DESC;

最佳答案

COUNT 是一个聚合函数,与其他聚合函数如 MINMAXSUM 等一样. 应用于组内的每个元素。

MySql 比其他数据库更灵活,因为它允许您使用 COUNT(*) 而无需 GROUP BY:这在例如SQL Server 或 Oracle。

关于MySQL - GROUP BY 更改结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19138578/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com