MySQL之排序查询与分页查询

一、 排序查询语法

排序查询语法:

select * from 表名 order by 列1 asc|desc [,列2 asc|desc,...]
select * from 表名 order by 列1 asc|desc [,列2 asc|desc,...]

语法说明:

  1. 先按照列1进行排序,如果列1的值相同时,则按照 列2 排序,以此类推
  2. asc从小到大排列,即升序
  3. desc从大到小排序,即降序
  4. 默认按照列值从小到大排序(即asc关键字)

例1:查询未删除男生信息,按学号降序:

select * from students where gender=1 and is_delete=0 order by id desc;
select * from students where gender=1 and is_delete=0 order by id desc;

例2:显示所有的学生信息,先按照年龄从大-->小排序,当年龄相同时 按照身高从高-->矮排序:

select * from students  order by age desc,height desc;
select * from students order by age desc,height desc;

二、分页查询

1. 分页查询的介绍

当我们在京东购物,浏览商品列表的时候,由于数据特别多,一页显示不完,一页一页的进行显示,这就是分页查询

2. 分页查询的语法

select * from 表名 limit start,count
select * from 表名 limit start,count

说明:

  1. limit是分页查询关键字
  2. start表示开始行索引,默认是0
  3. count表示查询条数

例1:查询前3行男生信息:

select * from students where gender=1 limit 0,3;
简写
select * from students where gender=1 limit 3;
select * from students where gender=1 limit 0,3; 简写 select * from students where gender=1 limit 3;

3. 分页查询案例

已知每页显示m条数据,求第n页显示的数据

提示: 关键是求每页的开始行索引

查询学生表,获取第n页数据的SQL语句:

select * from students limit (n-1)*m,m
select * from students limit (n-1)*m,m
Python零基础笔记汇总: Python爬虫笔记篇(含项目实战案例): Python Web篇笔记(更新中……): Part 01—Linux基础命令 Part 02—Linux高级命令 静态Web服务器 MySQL数据库的基本使用
经验分享 程序员 微信小程序 职场和发展