首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >sql中的GROUP BY和ORDER BY有什么区别

sql中的GROUP BY和ORDER BY有什么区别
EN

Stack Overflow用户
提问于 2009-08-14 11:50:07
回答 7查看 277.4K关注 0票数 128

你一般在什么时候使用哪一个?我们非常鼓励这样的例子!

我指的是MySql,但无法想象在另一个DBMS上会有什么不同

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2009-08-14 11:52:41

ORDER BY更改返回项的顺序。

GROUP BY将按指定的列聚合记录,允许您对未分组的列(如SUM、COUNT、AVG等)执行聚合函数。

票数 79
EN

Stack Overflow用户

发布于 2009-08-14 11:55:25

ORDER BY更改返回项的顺序。

GROUP BY将按指定的列聚合记录,允许您对未分组的列(如SUM、COUNT、AVG等)执行聚合函数。

TABLE:
ID NAME
1  Peter
2  John
3  Greg
4  Peter

SELECT *
FROM TABLE
ORDER BY NAME

= 
3 Greg
2 John
1 Peter
4 Peter

SELECT Count(ID), NAME
FROM TABLE
GROUP BY NAME

= 
1 Greg
1 John 
2 Peter

SELECT NAME
FROM TABLE
GROUP BY NAME
HAVING Count(ID) > 1

=
Peter
票数 258
EN

Stack Overflow用户

发布于 2009-08-14 11:54:45

区别正如其名称所暗示的那样: group by执行分组操作,而order by执行排序。

如果执行SELECT * FROM Customers ORDER BY Name,则会得到按客户名称排序的结果列表。

如果您执行SELECT IsActive, COUNT(*) FROM Customers GROUP BY IsActive,您将获得活动和非活动客户的计数。group by根据您指定的字段聚合结果。

票数 25
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1277460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档