SQL ORDER BY多列排序,分组排序,sql执行顺序
发布日期:2021-05-08 20:43:53 浏览次数:21 分类:精选文章

本文共 549 字,大约阅读时间需要 1 分钟。

直接上demo,表结构如下

在这里插入图片描述

#默认按照a列升序排序SELECT * FROM test ORDER BY a;#默认按照a列升序排序,如果a列值相同则接着按照b列排序,如果b列值都不同,那么则与`ORDER BY a`结果相同SELECT * FROM test ORDER BY a,b;#默认按照a列升序排序,如果a列值相同则接着按照b列排序,如果a,b列都相同则按照c列升序排序;如果a,b,c列值都各不相同则与`ORDER BY a`结果相同SELECT * FROM test ORDER BY a,b,c;

在这里插入图片描述

在这里插入图片描述

order by中除了列名还可以写条件分组

直接上demo,表结构如下

在这里插入图片描述

#分为 <= 5的一组和 > 5 的一组SELECT * FROM test ORDER BY a > 5;

在这里插入图片描述

#在<= 5的一组和 > 5 的一组前提下,组内再根据 b <= 4和 > 4 再分组SELECT * FROM test ORDER BY a > 5,b > 4;

在这里插入图片描述

参考自

sql执行顺序

SQL大致的解析流程如下

from .. on.. join.. where .. group by .. having ..select distinct ...order by ..  limit..
上一篇:java对称字符串验证
下一篇:MySQL CAST与CONVERT函数用法,产生另一个类型的值如字符串转int

发表评论

最新留言

不错!
[***.144.177.141]2025年04月18日 02时24分13秒