group by 前的 order by 无效
1.问题发现
业务中经常需要用到 分组的功能,但是查询到的每个分组中的数据 需要其中最大的或者最小的
2. 解决问题
1.order by 再 group by 发现sql 报错
2.order by 放到 group by 后面发现没有生效
3.把order by 放到子查询中 主查询中进行group by 发现也没有生效
4. 子查询中 + limit 10000 可以
5.查询的字段中 增加 @count :=@count+1 可
3.问题根源
group by 与order by 相似 都是要进行一遍自动排序的 ,所以group by 后面可有 desc 和asc 默认是asc
上述3方法中,sql 自动优化把order by 去掉了 多以没有生效
上述4 方法中,因为不知道需要多少数据 所以也是不合理的limit
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix