八、DQL-排序语句

四哥1个月前MySQL40

引言

排序是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。分内部排序和外部排序,若整个排序过程不需要访问外存便能完成,则称此类排序问题为内部排序。反之,若参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,则称此类排序问题为外部排序。内部排序的过程是一个逐步扩大记录的有序序列长度的过程。

目录

  • 排序概述

  • 排序语法

  • 单列排序

  • 组合排序

1、排序概述

将数据库表中杂乱无章的数据记录,通过字段的升序或降序的顺序排列的过程叫做排序。

2、排序语法

通过order by子句

格式:
select */字段列表 from 数据库表名 [where 条件表达式] [order by 字段名 [asc/desc]];

说明:

asc:升序,默认值

desc:降序

3、单列排序

按照一个字段进行排序

案例:

查看学生信息表中按照英语成绩升序排列,去掉成绩为null的学生。

mysql> select * from students where english is not null order by english;
+------+--------+------+------+---------+------+------------+-----------------+
| sid  | sname  | sex  | age  | english | math | entertime  | remark          |
+------+--------+------+------+---------+------+------------+-----------------+
| 6    | 王六 | 女  | 20   | 50.0    | 70.0 | 2017-09-01 | 他来自湖南 |
| 5    | 李三 | 男  | 19   | 60.0    | 88.0 | 2017-09-01 | 他来自湖北 |
| 2    | 李四 | 男  | 20   | 80.0    | 88.0 | 2017-09-01 | 他来自重庆 |
| 4    | 张八 | 男  | 18   | 80.0    | 85.0 | 2017-09-01 | 他来自天津 |
| 3    | 张红 | 女  | 19   | 86.0    | 80.0 | 2017-09-01 | 他来自北京 |
| 7    | 刘红 | 女  | 18   | 90.0    | 98.0 | 2017-09-01 | 他来自甘肃 |
| 1    | 张三 | 男  | 19   | 98.5    | 88.0 | 2017-09-01 | 他来自四川 |
+------+--------+------+------+---------+------+------------+-----------------+
7 行于数据集 (0.01 秒)

4、组合排序

按照多个字段进行排序,先按1字段排序,在按2字段排序,在按n字段排序

格式:
select */字段列表 from 数据库表名 [where 条件表达式] [order by 字段名1 [asc/desc],字段名2 [asc/desc],...,字段名n [asc/desc]];

案例:

查看学生信息表中先按照数学成绩升序排列,在按照英语成绩降序排列,最后去掉成绩为null的学生。

mysql> select * from students where english is not null order by math,english desc;
+------+--------+------+------+---------+------+------------+-----------------+
| sid  | sname  | sex  | age  | english | math | entertime  | remark          |
+------+--------+------+------+---------+------+------------+-----------------+
| 6    | 王六 | 女  | 20   | 50.0    | 70.0 | 2017-09-01 | 他来自湖南 |
| 3    | 张红 | 女  | 19   | 86.0    | 80.0 | 2017-09-01 | 他来自北京 |
| 4    | 张八 | 男  | 18   | 80.0    | 85.0 | 2017-09-01 | 他来自天津 |
| 1    | 张三 | 男  | 19   | 98.5    | 88.0 | 2017-09-01 | 他来自四川 |
| 2    | 李四 | 男  | 20   | 80.0    | 88.0 | 2017-09-01 | 他来自重庆 |
| 5    | 李三 | 男  | 19   | 60.0    | 88.0 | 2017-09-01 | 他来自湖北 |
| 7    | 刘红 | 女  | 18   | 90.0    | 98.0 | 2017-09-01 | 他来自甘肃 |
+------+--------+------+------+---------+------+------------+-----------------+
7 行于数据集 (0.02 秒)



相关文章

十、DQL-聚合函数

十、DQL-聚合函数

引言SQL基本函数,聚合函数对一组值执行计算,并返回单个值,也被称为组函数。聚合函数对一组值执行计算并返回单一的值。除 COUNT 以外,聚合函数忽略空值,如果COUNT函数的应用对象是一个确定列名,...

十一、DQL-limit语句

十一、DQL-limit语句

引言在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能-limit。目录limit概述limit语法limit应用limi...

九、DQL-分组语句

九、DQL-分组语句

引言数据分组是根据统计研究的需要,将原始数据按照某种标准划分成不同的组别,分组后的的数据称为分组数据。数据分组应遵循两个基本原则:穷尽性原则这一原则就是要求调查的每一单位都能无一例外地划归到某一组去,...

四、SQL

四、SQL

引言结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同...

十三、约束

十三、约束

引言约束是按照约定(特定)条件限制,管束等意思。约束的作用是添加、删除。在数据库中对表中的数据进行限制,保证数据的正确性、有效性和完整性。一个表如果添加了约束,不正确的数据将无法插入到表中。约束在创建...

七、DQL语句

七、DQL语句

引言DQL(Data QueryLanguage )数据查询语言,基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块。目录DQL概述记录查询条件查询1、DQL概述1.1、什么是DQ...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。