使用聚合函数(MySQL)

时间:2014-03-06 17:44:42

标签: mysql database

我曾多次听说当我们使用聚合函数时,在某些查询中使用HAVING或GROUP BY是一种很好的做法(几乎必须有)。有人能解释一下吗? 据我所知,这将有助于我们总结或结果,但那里的表现有什么大不同?在查询中我们是否必须有HAVING或GROUP BY才能在某些列中搜索具有MAX函数的行?

2 个答案:

答案 0 :(得分:2)

我认为在这种情况下阅读文档可能非常有用

  
      
  • 如果在不包含GROUP BY子句的语句中使用组函数,则它等同于对所有行进行分组。
  •   

如果您不使用GROUP BY,则表示不使用任何聚合函数。所以它实际上是必须做的而不是qn选项。

了解详情here

答案 1 :(得分:0)

假设你有一张桌子

'name' | 'sex'
'jeff' | 'M'
'jen'  | 'F'
'mike' | 'M'

SELECT sex, count(*) FROM myTable GROUP BY sex

这将返回

'M', 2
'F', 1

基本上,您需要GROUP BY语句,因为您需要告诉数据库如何聚合结果集(即收集类似的行)。