九、查询结果排序与分页

简介: 九、查询结果排序与分页

一、排序应用场景

我们已经掌握使用 SELECT 语句结合 WHERE 查询条件获取需要的数据,但在实际应用中还会遇到例如学生按身高从高到低排序、商品按价格排序、博客文章按发布的先后顺序排序等等这类需求,那么遇到这类需求该如何解决呢?


二、order by 的使用

在SQL中,使用 order by 对查询结果集进行排序,可以按照一列或者多列进行排序,语法如下:

SELECT column_name1, column_name2, column_name3 
FROM table_name1,table_name2
ORDER BY  column_name, column_name [ASC|DESC]

TIP:

  1. ASC 表示按照升序排列,DESC 表示按照降序排列;
  2. 默认情况下对列按照升序排列。


例如将学生表中的学生按照年龄升序,身高降序排列:

 select name,age,height from student order by age,height desc;

三、limit 的使用

在 SELECT 语句中使用 LIMIT 子句来约束要返回的记录数,通常使用 LIMIT 实现分页。语法如下:

SELECT  column_name1, column_name2, column_name3 
FROM table_name1,table_name2
LIMIT [offset] row_count;

TIP:

  1. offset 指定要返回的第一行的偏移量。第一行的偏移量是0,而不是1;
  2. row_count 指定要返回的最大行数。

limit 分页公式:limit (page-1) * row_count,row_count



例如获取学生表第100页的数据,每页50条:

# 第100页偏移量:(100-1) * 50
select name,age,sex from student limit 4950,50
目录
相关文章
DQL-排序分页
DQL-排序分页
25 0
|
6月前
|
SQL 关系型数据库 MySQL
排序与分页——“MySQL数据库”
排序与分页——“MySQL数据库”
|
12月前
排序和分页
排序和分页
51 0
|
SQL Oracle 关系型数据库
第5章_排序与分页
第5章_排序与分页
50 0
|
关系型数据库 MySQL 数据库
MySQL数据库中的排序与分页的操作详解
MySQL数据库中的排序与分页的操作详解
98 0
|
SQL 数据库
对查询结果进行排序
对查询结果进行排序
88 0
|
SQL Oracle 关系型数据库
第05章_排序与分页
第05章_排序与分页
85 0
|
关系型数据库 MySQL
ES复杂查询-结果过滤, 排序,分页
ES复杂查询-结果过滤, 排序,分页
|
数据采集 算法 前端开发
查询分页不只有 limit,这四种分页方法值得掌握
查询分页不只有 limit,这四种分页方法值得掌握
262 0
查询分页不只有 limit,这四种分页方法值得掌握