MySQL排序和分页

排序和分页

排序数据

排序规则

如果没有使用排序操作:按照默认来排序(添加顺序)

使用 ORDER BY对查询数据进行排序

  • 升序:ASC(默认升序,null先排序)
  • 降序: DESC

列的别名只能在 ORDER BY 中使用

:WHERE和ORDER BY同时出现时WHERE和FROM紧挨

单列排序(一级排序)

SELECT id 
from employees
ORDER BY id DESC;

多列排序(二级排序)

SELECT id #id升序的基础上name降序
from employees
ORDER BY id DESC,name ASC;

分页

背景

  • 查询记录太多,不方便
  • 表中有四条数据,想查第二条和第三条,怎么办呢

实现规则

LIMIT

  • 公式:配置size条数据,显示第n页

​ LIMIT (n-1)*size(偏移量),size(显示多少条数据);

SELECT id,name
from employees
limit 0,1;#显示一条记录,显示第一页

SELECT id,name
from employees
limit 1,1;#显示一条记录,显示第二页

WHERE...ORDER BY...LIMIT的综合应用

声明顺序:先WHERE,再ORDER BY,最后LIMIT

SELECT id,name
from employees
WHERE id > 1000
ORDER BY name desc
limit 0,2;

8.0新特性(颠倒一下)

LIMIT 显示多少条(条目数) OFFSET 偏移量;

拓展

LIMIT可以在MySQL、MariaDB、PGSQL、SQLLite等数据库中使用;

不能在SQL Server、DB2、Oracle!中使用

posted @ 2022-03-03 21:38  T,a,o  阅读(95)  评论(0编辑  收藏  举报