前面小节介绍了如何查询数据,并且介绍了如何使用 WHERE 条件对查询的数据结果集进行筛选,本小节介绍如何使用 ORDER BY 对查询结果集进行排序,排序在实际业务中非常有必要,可以较好地对结果集数据分析和处理.
ASC 是对结果集按照字段从小到大排序(升序),以 teacher 表为例,将查询出来的所有结果集按照年龄 age 从小到大排序:
执行结果如下图:
DESC 是对结果集按照字段从大到小排序(降序),以 teacher 表为例,将查询出来的所有结果集按照年龄 id 从大到小排序:
以 teacher 表为例,将查询出来的结果集按照 age 从大到小排序之后,再按照 id 字段从小到大排序:
前面排序的 age 和 id 字段是 int 类型,为了演示方便这里先插入几个 name 字段为英文名的教师测试数据,并对 name 字段排序,插入数据 SQL 语句如下:
对查询结果集按照 name 字段 ASC 升序排序:
SELECT Seq,Rs,TotalIndex FROM TABLENAME; -- 正常查询
--特别说明:如果数据量较大,请先按条件筛选出数据结果后,,再最外层Sql语句上去排序,这样的处理方式不会进行全表扫描,示例如下
Select t1.seq,t1.rs,t1.totalindex from (
SELECT Seq,Rs,TotalIndex FROM Tablename where Rs = ?
MYSQL中查询表中按字段降序排列的前N条记录模式:
SELECT 字段名[ , 字段名...] FROM 表名 WHERE 条件 LIMIT 数量 ORDER BY 字段名 DESC
例如:
LIMIT限制查询数量,ORDER BY指出按什么排序,DESC表示按降序排序.
MySQL排序 有时候很容易记混,我这里把他记录了下:
desc是降序
asc是升序(默认不写就是升序)
MySql语句:
①带条件的排序
先建个测试表
MySql order by 多字段排序
结果很明显:单一字段排序的时候,其他字段出现的顺序是自然排序的
下面为正确的使用
对比code,name的单个字段降序排序,我们可以发现, 使用 order by code desc, name desc的时候,MySQL会先以code进行降序排序,在code进行降序排序该基础上,再使用name进行降序排序.
最后:
order by concat(code, name) desc的效果等同于 order by code desc, name desc
以上就是土嘎嘎小编为大家整理的mysql降序排序怎么弄相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!