作者回复: 这是个好问题,ORDER BY就是对记录进行排序。如果你在前面用到了GROUP BY,实际上是一种分组的聚合方式,已经把一组的数据聚合成为了一条记录,所以再进行排序的时候,也相当于是对分的组进行排序。
作者回复: 在执行顺序上,SELECT字段在GROUP BY和HAVING之后,不过在SELECT字段之前,已经计算了聚集函数,也就是COUNT(*) as num。聚集函数的计算在GROUP BY之后,HAVING之前
作者回复: 正确
作者回复: 理解了HAVING和WHERE的区别,就了解了分组过滤和条件过滤。还有SELECT语句种的关键字的顺序:SELECT ... FROM ... WHERE ... GROUP BY ... HAVING ... ORDER BY ...
作者回复: 谢谢!
作者回复: SQL正确,最后结果贴的不太完整
作者回复: COUNT(*)后面应该有 as num
编辑回复: 您好,文章已进行更正,谢谢您的反馈。
作者回复: 哈哈
作者回复: Good Job
作者回复: 感谢
作者回复: 正确
作者回复: 正确 不过COUNT(*)就不需要用ROUND了
作者回复: Good Job
作者回复: 问题1回答正确
作者回复: 加油~
作者回复: SQL正确