SQL中group by的用法

    练习练习,加深印象。

    给出链接:http://www.cnblogs.com/rainman/archive/2013/05/01/3053703.html

    “Group By”:根据by指定的规则对数据进行分组,将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。

    先给出一个自己练习的小例子:

   

   试了几个,这个可以比较好地实现:

     

  今天(2014-09-19)看了一下,上面的语句不能那样写,那样写会把别人的数据删掉,应该是一个select的查询语句。

  比较简单:

  select * from #Stu where ID IN (select min(ID) from #Stu group by Name) 就可以了

现在按照上面链接中的步骤练习一下:

   

和order by一起用:

     

关于和Group by与select指定的字段限制,请仔细看链接的文章。

Where和Having的区别:

Where:分组前过滤数据,不能包含聚合函数。

Having:分组后过滤数据(过滤出特定的组),经常包含聚合函数。

区别还是很明显的。

 

如果在group by后面使用where的话,会出现下面的错误:

    

 有待总结。

原文地址:https://www.cnblogs.com/hshuai/p/3607087.html