sql语句order by与limit的使用

一、order by 简介

ORDER BY 关键字用于对结果集进行「排序」。

1、order by 的作用

ORDER BY 关键字可以使查询返回的「结果集」按照指定的列进行排序,可以按照某「一列」排序或者同时按照「多列」进行排序,排序的顺序可以是「升序」或者「降序」。

2、语法格式

select column_name,column_name
from table_name
order by column_name asc|desc
limit offset, count;

column_name 表示要查询的列名

table_name 表示要查询的表名

column_name  表示按照该列来进行排序 asc | desc分别表示升序和降序,默认是asc即升序

limit 用于限制查询结果集返回的记录数。比如说我们要查询数据库表的时候,执行SQL语句返回了大量的List,这个时候就可以使用Limit关键字限制查询数据库返回的条数。(可以指定从哪里开始取,取多少)

offset 它是指定结果从哪一条记录开始返回,第一条记录的偏移量(和Python列表的索引异曲同工)为0。如果省略offset,则默认从第一条记录开始(offset为0)。

count 则是一次返回多少条记录

如果想要结果集从索引为0的行数开始,每页的大小为10条,那么语句为:

limit 0, 10;

二、order by 使用

首先我们准备一个测试用的表,查询返回的「结果集」如下

sql语句order by与limit的使用_第1张图片
1、按照字段名排序

ORDER BY 关键字可以按照某「列名」进行排序,列名就是字段名,比如按照 username 列排序可以明显的看到,查询结果发生了变化, username 列已经按照升序进行排序

sql语句order by与limit的使用_第2张图片

2、按照索引进行排序

ORDER BY 关键字可以按照「索引」进行排序,比如最左边第一列 username 的索引是 1,嘴边第二列 password列的索引是 2,依次类推…比如按照第1列排序。

sql语句order by与limit的使用_第3张图片

第一列就是 username 列,我们可以看到,排序结果和字段名一致。

3、降序

ORDER BY 关键字默认按照「升序」对返回的结果集进行排序。如果需要按照「降序」对记录进行排序,可以使用 DESC 关键字。

sql语句order by与limit的使用_第4张图片

4、按照多列排序

ORDER BY 关键字可以按照「多列」进行排序,列名之间使用逗号,间隔。

sql语句order by与limit的使用_第5张图片

由上面的结果我们可以发现,当第一列 username 相同时,再按照第二列 password排序;如果第一列不相同,则不会对第二列排序。

你可能感兴趣的:(SQL语句与MySQL数据库,sql,数据库)