文章目录

  • 1、ORDER BY排序
  • 2、LIMIT分页

1、ORDER BY排序

1.1 排序规则
使用 ORDER BY 子句排序
ASC(ascend): 升序
DESC(descend):降序
ORDER BY 子句在SELECT语句的结尾。

1.2 单列排序

SELECT last_name, job_id, department_id, hire_date
FROM employees
ORDER BY hire_date ; #默认升序
SELECT last_name, job_id, department_id, hire_date
FROM employees
ORDER BY hire_date DESC ; #指定降序

1.3 多列排序

SELECT last_name, department_id, salary
FROM employees
ORDER BY department_id, salary DESC; #按照部门id升序,工资降序

可以使用不在SELECT列表中的列排序。
在对多列进行排序的时候,首先排序的第一列必须有相同的列值,才会对第二列进行排序。如果第一列数据中所有值都是唯一的,将不再对第二列进行排序。


2、LIMIT分页

2.1 背景
背景1:查询返回的记录太多了,查看起来很不方便,要实现分页查询。
背景2:表里有 4 条数据,我们只想要显示第 2、3 条数据。

2.2 实现规则
分页原理:所谓分页显示,就是将数据库中的结果集,一段一段显示出来需要的条件。MySQL中使用 LIMIT 实现分页
格式:

LIMIT [位置偏移量,] 行数

第一个“位置偏移量”参数指示MySQL从哪一行开始显示,是一个可选参数,如果不指定“位置偏移量”,将会从表中的第一条记录开始(第一条记录的位置偏移量是0,第二条记录的位置偏移量是1,以此类推);第二个参数“行数”指示返回的记录条数。

--前10条记录:
SELECT * FROM 表名 LIMIT 0,10;
或者
SELECT * FROM 表名 LIMIT 10;
--第11至20条记录:
SELECT * FROM 表名 LIMIT 10,10;
--第21至30条记录:
SELECT * FROM 表名 LIMIT 20,10;

MySQL 8.0中可以使用“LIMIT 3 OFFSET 4;”,意思是获取从第5条记录开始后面的3条记录,和“LIMIT4,3;”返回的结果相同。

分页显式公式:(当前页数-1)*每页条数,每页条数

SELECT * FROM table
LIMIT(PageNo - 1)*PageSize,PageSize;

注意:LIMIT 子句必须放在整个SELECT语句的最后!

使用 LIMIT 的好处:约束返回结果的数量可以减少数据表的网络传输量 ,也可以 提升查询效率 。如果我们知道返回结果只有1条,就可以使用 LIMIT 1 ,告诉 SELECT 语句只需要返回一条记录即可。这样的好处就是 SELECT 不需要扫描完整的表,只需要检索到一条符合条件的记录即可返回。

MySQL排序ORDER BY与分页LIMIT,SQL,减少数据表的网络传输量,完整详细可收藏相关推荐

  1. 使用PowerDesigner导入SQL生成数据表模型

    一直听公司做数据库的同事说用PowerDesigner设计数据库模型, 博主闲来无事决定拿来小试牛刀. 用SQL生成数据表模型: 1.启动PowerDesigner,选择"File" ...

  2. (转)【mysql元数据库】使用information_schema.tables查询数据库和数据表信息 ---数据记录大小统计...

    转:https://www.cnblogs.com/ssslinppp/p/6178636.html https://segmentfault.com/q/1010000007268994?_ea=1 ...

  3. SQL Server数据表中数据的增加(插入)、查询、修改、删除

    目录 零.码仙励志 一.数据表中数据的增加(插入) 二.数据表中数据的查询 三.数据表中数据的修改 四.数据表中数据的删除 零.码仙励志 伟人所达到并保持着的高处,并不是一飞就到的,而是他们在同伴们都 ...

  4. MySQL基本的SELECT语句,SQL语言概述,基础和重要不冲突,完整详细可收藏

    文章目录 1.SQL语言的分类 2.SQL语言的规则与规范 3.基本的SELECT语句 4.DESCRIBE显示表结构 5.WHERE过滤数据 1.SQL语言的分类 SQL语言在功能上主要分为如下3大 ...

  5. mysql 导入8msql文件_MySQL导入大容量SQL文件数据问题

    mysql在通过导入sql文件可能会出现下面二个问题: 1.如果sql文件过大,会出现"MySQL server has gone away"问题; - 2.如果sql文件数据有中 ...

  6. DataGrip 2019.2.5 —— MySQL数据表迁移到SQL Server数据表解决方案

    问题描述 DataGrip 2019.2.5中导出的MySQL数据库的数据表不能直接迁移到SQL Server数据库的数据表. 系统环境 DataGrip 2019.2.5 MySQL 8.0 SQL ...

  7. 一条一条来,MySQL变量、流程控制与游标,完整详细可收藏

    文章目录 1. 变量 2. 定义条件与处理程序 3. 流程控制 4. 游标 MySQL8的新特性-全局变量的持久化 1. 变量 在MySQL数据库的存储过程和函数中,可以使用变量来存储查询或计算的中间 ...

  8. 嵌套套娃,MySQL子查询,单行与多行子查询,相关和不相关(关联)子查询,完整详细可收藏

    文章目录 1.需求分析与问题解决 2.单行子查询 3.多行子查询 4.相关子查询 5.抛一个思考题 子查询指一个查询语句嵌套在另一个查询语句内部的查询,这个特性从MySQL 4.1开始引入.SQL 中 ...

  9. MySQL期末考试题目 题目1:查询employee数据表中的第5—8行的数据;题目2:查询每个部门的员工人数以及平均工资;题目3:查询‘孙威’的基本信息,包括员工编号、所在部门名称、岗位等级以及基本

    上篇博客记录了我在mysql考试时遇到的报错,错过了考试时间[我不知道考试时间只有20分钟] 关于第二题,第三题,哪位大佬可以有点再简单的操作方法ma,或者其他方法,想学习学习,欢迎各位大佬指点指点! ...

最新文章

  1. 【转】Android APK反编译就这么简单 详解(附图)
  2. TCP/IP协议面试常见题目
  3. Go语言TCP Socket编程
  4. 光流 | 基于Matlab实现Lucas-Kanade方法:方法1(附源代码)
  5. java的求和函数_Java Stream流之求和的实现
  6. android Animator详解
  7. 今天的就每天练习这招的企业即时通讯
  8. 算法提高 超级玛丽(java)
  9. java nextbyte()_java.util.Scanner.hasNextByte()方法实例
  10. import java文件,java 文件夹操作,java文件夹,import java.
  11. 【算法•日更•第三十期】区间动态规划:洛谷P4170 [CQOI2007]涂色题解
  12. 中国水龙头市场趋势报告、技术动态创新及市场预测
  13. 独家:中国电信提出建产业统一开发平台 避免个人与政企业务脱节
  14. 将博客搬至CSDN(放弃)
  15. 探究VS2017运行库
  16. 单片机c语言fft函数,单片机ADC采样FFT计算试验
  17. cad2020打印样式放在哪个文件夹_压箱底!这些CAD打印设置技巧只能从老师傅身上学到...
  18. 电机与拖动(电、磁、机械运动)
  19. 10个切片动作过渡PR预设
  20. CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://mirrors.tuna.tsi解决办法 亲测有效

热门文章

  1. MyBatis教程– CRUD操作和映射关系–第1部分
  2. 使用Spring Roo进行快速云开发–第2部分:VMware Cloud Foundry
  3. Google Appengine登台服务器操作方法
  4. oracle rman 用户,对Oracle数据库进行RMAN备份的Oracle数据库用户权限
  5. Linux 下如何查询 tomcat 的安装目录
  6. win7旗舰版安装不了python_怎样在Win7 64位旗舰版安装Python+Eclipse开发环境
  7. 计算机组装与维修单招,单招职二 计算机组装与维修试卷.doc
  8. python求字符串的所有子集_打印一字符串的所有子集 | 学步园
  9. 周敏教授计算机编码与密码学,中国科学院计算机与控制学院博士生导师:张玉清教授...
  10. notebook打开外部文件_CAD外部参照真是个好东西!