MySQL排序ORDER BY与分页LIMIT,SQL,减少数据表的网络传输量,完整详细可收藏
文章目录
- 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,减少数据表的网络传输量,完整详细可收藏相关推荐
- 使用PowerDesigner导入SQL生成数据表模型
一直听公司做数据库的同事说用PowerDesigner设计数据库模型, 博主闲来无事决定拿来小试牛刀. 用SQL生成数据表模型: 1.启动PowerDesigner,选择"File" ...
- (转)【mysql元数据库】使用information_schema.tables查询数据库和数据表信息 ---数据记录大小统计...
转:https://www.cnblogs.com/ssslinppp/p/6178636.html https://segmentfault.com/q/1010000007268994?_ea=1 ...
- SQL Server数据表中数据的增加(插入)、查询、修改、删除
目录 零.码仙励志 一.数据表中数据的增加(插入) 二.数据表中数据的查询 三.数据表中数据的修改 四.数据表中数据的删除 零.码仙励志 伟人所达到并保持着的高处,并不是一飞就到的,而是他们在同伴们都 ...
- MySQL基本的SELECT语句,SQL语言概述,基础和重要不冲突,完整详细可收藏
文章目录 1.SQL语言的分类 2.SQL语言的规则与规范 3.基本的SELECT语句 4.DESCRIBE显示表结构 5.WHERE过滤数据 1.SQL语言的分类 SQL语言在功能上主要分为如下3大 ...
- mysql 导入8msql文件_MySQL导入大容量SQL文件数据问题
mysql在通过导入sql文件可能会出现下面二个问题: 1.如果sql文件过大,会出现"MySQL server has gone away"问题; - 2.如果sql文件数据有中 ...
- DataGrip 2019.2.5 —— MySQL数据表迁移到SQL Server数据表解决方案
问题描述 DataGrip 2019.2.5中导出的MySQL数据库的数据表不能直接迁移到SQL Server数据库的数据表. 系统环境 DataGrip 2019.2.5 MySQL 8.0 SQL ...
- 一条一条来,MySQL变量、流程控制与游标,完整详细可收藏
文章目录 1. 变量 2. 定义条件与处理程序 3. 流程控制 4. 游标 MySQL8的新特性-全局变量的持久化 1. 变量 在MySQL数据库的存储过程和函数中,可以使用变量来存储查询或计算的中间 ...
- 嵌套套娃,MySQL子查询,单行与多行子查询,相关和不相关(关联)子查询,完整详细可收藏
文章目录 1.需求分析与问题解决 2.单行子查询 3.多行子查询 4.相关子查询 5.抛一个思考题 子查询指一个查询语句嵌套在另一个查询语句内部的查询,这个特性从MySQL 4.1开始引入.SQL 中 ...
- MySQL期末考试题目 题目1:查询employee数据表中的第5—8行的数据;题目2:查询每个部门的员工人数以及平均工资;题目3:查询‘孙威’的基本信息,包括员工编号、所在部门名称、岗位等级以及基本
上篇博客记录了我在mysql考试时遇到的报错,错过了考试时间[我不知道考试时间只有20分钟] 关于第二题,第三题,哪位大佬可以有点再简单的操作方法ma,或者其他方法,想学习学习,欢迎各位大佬指点指点! ...
最新文章
- 【转】Android APK反编译就这么简单 详解(附图)
- TCP/IP协议面试常见题目
- Go语言TCP Socket编程
- 光流 | 基于Matlab实现Lucas-Kanade方法:方法1(附源代码)
- java的求和函数_Java Stream流之求和的实现
- android Animator详解
- 今天的就每天练习这招的企业即时通讯
- 算法提高 超级玛丽(java)
- java nextbyte()_java.util.Scanner.hasNextByte()方法实例
- import java文件,java 文件夹操作,java文件夹,import java.
- 【算法•日更•第三十期】区间动态规划:洛谷P4170 [CQOI2007]涂色题解
- 中国水龙头市场趋势报告、技术动态创新及市场预测
- 独家:中国电信提出建产业统一开发平台 避免个人与政企业务脱节
- 将博客搬至CSDN(放弃)
- 探究VS2017运行库
- 单片机c语言fft函数,单片机ADC采样FFT计算试验
- cad2020打印样式放在哪个文件夹_压箱底!这些CAD打印设置技巧只能从老师傅身上学到...
- 电机与拖动(电、磁、机械运动)
- 10个切片动作过渡PR预设
- CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://mirrors.tuna.tsi解决办法 亲测有效
热门文章
- MyBatis教程– CRUD操作和映射关系–第1部分
- 使用Spring Roo进行快速云开发–第2部分:VMware Cloud Foundry
- Google Appengine登台服务器操作方法
- oracle rman 用户,对Oracle数据库进行RMAN备份的Oracle数据库用户权限
- Linux 下如何查询 tomcat 的安装目录
- win7旗舰版安装不了python_怎样在Win7 64位旗舰版安装Python+Eclipse开发环境
- 计算机组装与维修单招,单招职二 计算机组装与维修试卷.doc
- python求字符串的所有子集_打印一字符串的所有子集 | 学步园
- 周敏教授计算机编码与密码学,中国科学院计算机与控制学院博士生导师:张玉清教授...
- notebook打开外部文件_CAD外部参照真是个好东西!