博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MYSQL的limit和offset
阅读量:6455 次
发布时间:2019-06-23

本文共 824 字,大约阅读时间需要 2 分钟。

  hot3.png

在我们使用相关的查询语句的时候,一般都要返回前几条或是中间的某几行数据,这时你应如何处理呢?不必担心,MySQL数据库已经为我们提供了这样一个功能。

LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。MySQL LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,

第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。

初始记录行的偏移量是 0(而不是 1)。

SELECT * FROM table LIMIT 5,10;  --检索记录行 6-15

为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:

SELECT * FROM table LIMIT 95,-1; --检索记录行 96-last

如果只给定一个参数,它表示返回最大的记录行数目:

SELECT * FROM table LIMIT 5;

检索前 5 个记录行。换句话说,LIMIT n 等价于 MySQL LIMIT 0,n。

例子

EMPLOYEE表中数据如下:

id   salary

1    100

2    200
3    300

 

SELECT SALARY FROM EMPLOYEE E ORDER BY E.SALARY DESC LIMIT 2 OFFSET 1;

分析:limit 2 等价于 limit 0 ,2,即从偏移量0开始最多返回两行,如果存在OFFSET,则以OFFSET为准,即从偏移量从1开始最多返回2行。

所以返回的是

salary

200

100

SELECT SALARY FROM EMPLOYEE E ORDER BY E.SALARY DESC LIMIT 2,1;

分析:limit 2,1表示从偏移量2开始最多返回1条记录,所以返回的是

salary

100

转载于:https://my.oschina.net/zjg23/blog/869767

你可能感兴趣的文章
最简单的RPC框架实现
查看>>
Servlet 技术全总结 (已完成,不定期增加内容)
查看>>
[JSOI2008]星球大战starwar BZOJ1015
查看>>
CountDownLatch与thread-join()的区别
查看>>
linux下MySQL安装登录及操作
查看>>
centos 7 部署LDAP服务
查看>>
揭秘马云帝国内幕:马云的野心有多大
查看>>
topcoder srm 680 div1
查看>>
算法专题(1)-信息学基本解题流程!
查看>>
iOS项目分层
查看>>
UML关系图
查看>>
一个action读取另一个action里的session
查看>>
leetcode 175. Combine Two Tables
查看>>
如何给一个数组对象去重
查看>>
Guava包学习-Cache
查看>>
2019-06-12 Java学习日记之JDBC
查看>>
linux c 笔记 线程控制(二)
查看>>
vue.js笔记
查看>>
【Unity3D入门教程】Unity3D之GUI浅析
查看>>
Hive 简单操作
查看>>