ORDER BY 排序
发布时间:2023-03-06 14:27:42 所属栏目:MySql教程 来源:
导读:ORDER BY 排序
前面小节介绍了如何查询数据,并且介绍了如何使用 WHERE 条件对查询的数据结果集进行筛选,本小节介绍如何使用 ORDER BY 对查询结果集进行排序,排序在实际业务中非常有必要,可以较好地对结果集数据
前面小节介绍了如何查询数据,并且介绍了如何使用 WHERE 条件对查询的数据结果集进行筛选,本小节介绍如何使用 ORDER BY 对查询结果集进行排序,排序在实际业务中非常有必要,可以较好地对结果集数据
ORDER BY 排序 前面小节介绍了如何查询数据,并且介绍了如何使用 WHERE 条件对查询的数据结果集进行筛选,本小节介绍如何使用 ORDER BY 对查询结果集进行排序,排序在实际业务中非常有必要,可以较好地对结果集数据分析和处理。 1.ASC 从小到大排序 ASC 是对结果集按照字段从小到大排序(升序),以 teacher 表为例,将查询出来的所有结果集按照年龄 age 从小到大排序: SELECT * FROM teacher ORDER BY age ASC; 2.DESC 从大到小排序 DESC 是对结果集按照字段从大到小排序(降序),以 teacher 表为例,将查询出来的所有结果集按照年龄 id 从大到小排序: SELECT * FROM teacher ORDER BY id DESC; 3.使用多字段混合排序 以 teacher 表为例,将查询出来的结果集按照 age 从大到小排序之后,再按照 id 字段从小到大排序: SELECT * FROM teacher ORDER BY age DESC,id ASC; 4.对字符串类型字段排序 前面排序的 age 和 id 字段是 int 类型,为了演示方便这里先插入几个 name 字段为英文名的教师测试数据,并对 name 字段排序,插入数据 sql 语句如下: INSERT INTO teacher(name,age,id_number,email)VALUES('Tom',,'42011720200604077X','tom@qq.com'), ('Jack',,'42011720200604099X','jack@qq.com'), ('Mary',,'42011720200604020X','mary@qq.com'), ('Timo',,'42011720200604022X','timo@qq.com'), ('Faker',,'42011720200604033X','faker@qq.com'); 对查询结果集按照 name 字段 ASC 升序排序: SELECT * FROM teacher ORDER BY name ASC; 5.小结 本小节介绍了如何使用 ORDER BY 对查询结果集按照值字段排序,其中包括 ASC 升序和 DESC 降序,需要注意的是各种数据的字符集可能不同,如中文字符编码 GBK编码、utf-8编码, 若需要经常对字符串类型字段进行排序,可以给该字符串字段加上普通 Bree索引,二级索引树字符串默认存储方式是按照字符集升序存储的(MysqL8.0 可自定义排序存储方式),所以有索引的字段排序性能比没有索引的字段排序性能好。 (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |