当前位置:  开发笔记 > 后端 > 正文

如何在mysql中更改Group By子句的默认顺序

如何解决《如何在mysql中更改GroupBy子句的默认顺序》经验,为你挑选了3个好方法。

默认情况下,GROUP BY子句提取的数据按升序排序.如何将其更改为降序.



1> 小智..:

您应该在SQL上使用派生表.例如,如果您想要获取您尝试使用的特定活动的最新行:

select * 
from activities 
group by id_customer 
order by creation_date

但它不起作用.尝试改为:

SELECT * 
FROM ( select * 
       from activities 
       order by creation_date desc ) sorted_list 
GROUP BY id_customer



2> RB...:

添加DESC到该GROUP BY子句,例如:

GROUP BY myDate DESC



3> Shinhan..:

正如MySQL文档所说,

SELECT * FROM foo GROUP BY bar

相当于

SELECT * FROM foo GROUP BY bar ORDER BY bar

默认行为无法更改,但您可以使用

SELECT * FROM foo GROUP BY bar ORDER BY bar DESC

没有经历任何速度惩罚,因为无论如何将对分组的场进行分类.顺便说一下,当排序不重要时,你可以通过使用ORDER BY NULL来获得(小)加速.

推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有