文档章节

sql语句limit offset

S
 Secretry
发布于 2015/04/20 16:15
字数 444
阅读 21
收藏 0

 LIMIT 和 OFFSET



附加上 LIMIT和OFFSET 子句之后,你就可以检索原来查询语句查询出来的结果中的一部分数据行:

SELECT select_list
	FROM table_expression
	[LIMIT { number | ALL }] [OFFSET number]

如果给出了一个限制计数,那么返回不超过那么多的行。 (但可能更少些,因为查询本身可能生成的行数就比较少。) LIMIT ALL和省略 LIMIT子句一样。

OFFSET说明在开始返回行之前忽略多少行。 OFFSET 0和省略OFFSET子句是一样的。 如果OFFSET和LIMIT都出现了, 那么在计算LIMIT个行之前忽略OFFSET行。

如果使用LIMIT,那么用ORDER BY 子句把结果行约束成一个唯一的顺序是一个好主意。 否则你就会拿到一个不可预料的该查询的行的子集。 — 你要的可能是第十到二十行,但以什么顺序的十到二十? 除非你声明了ORDER BY,否则顺序是不知道的。

查询优化器在生成查询规划的时候会考虑LIMIT,因此如果你给 LIMIT和OFFSET不同的东西,那么你很可能收到不同的规划(产生不同的行顺序)。 因此,使用不同的LIMIT/OFFSET值选择不同的查询结果的子集将生成不一致的结果, 除非你用ORDER BY强制一个可预料的顺序。这可不是臭虫; 这是一个很自然的结果,因为 SQL 没有许诺把查询的结果按照任何特定的顺序发出,除非用了ORDER BY来约束顺序。

OFFSET 子句忽略的行仍然需要在服务器内部计算;因此,一个很大的 OFFSET 可能还是不够有效率的。


本文转载自:

共有 人打赏支持
S
粉丝 0
博文 13
码字总数 3759
作品 0
南京
PHP中使用PDO执行LIMIT语句无结果的问题

以下是不能查询出结果的程序 以下是可以获取结果的方法 这其中的原因还不大了解,欢迎大家讨论

景云之应
2016/09/07
13
1
Mysql的ORDER BY 和Limit offset的一个问题,拿出来和大家研究下

今天碰到个很怪异的问题,如题关于mysql的ORDER BY 语句和Limit offset语句问题。 bug再现下:select * from A a where a.culomn1 limit 5 offset 0 order by a.culomn1 asc 则出现sqlExcept...

不会笑
06/26
0
0
通过索引优化含ORDER BY的MySQL语句的经验

看到社区里面大家非常踊跃的讨论关于MySQL优化,特别是Order by优化的问题[via],我就将自己在平时项目中积累的一些经验和大家分享一下。一家之言,未免有误,欢迎拍砖,仅供参考。 关于建立...

Edwyn王
2016/06/24
37
0
mysql的limit经典用法及优化

用法一 SELECT .* FROM keyword_rank WHERE (advertiserid='59') LIMIT 2 OFFSET 1; 比如这个SQL ,limit后面跟的是2条数据,offset后面是从第1条开始读取。 用法二 SELECT .* FROM keyword...

drewin
2013/09/24
0
3
在SQL Server中实现 Limit m, n 的功能

在MySQL中,可以用 Limit 来查询第 m 列到第 n 列的记录, 例如:[sql] view plaincopy select * from tablename limit m, n 但是,在SQL Server中,不支持 Limit 语句。怎么办呢? 解决方案...

jackguo
2013/11/25
0
4

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Memcached启动参数详解

memcached -d -m 1024 -l 192.168.100.101 -p 11211 -P /tmp/memcached.pid -c 1024 -f 1.25 -n 80 -t 16 运行参数描述 -d:以守护(daemon)进程方式启动; -u:是运行Memcache的用户,例如 ......

月下狼
22分钟前
0
0
xgboost-kaggle

https://www.kaggle.com/dansbecker/xgboost This tutorial is part of the Learn Machine Learning series. In this step, you will learn how to build and optimize models with the powe......

tantexian
22分钟前
0
0
nginx学习八 代理服务

最常用的语法 proxy_pass Syntax: proxy_pass URL;Default: --Context:location.if in location,limit_exception 反向代理 例:/etc/nginx/conf.d/default.conf 反向代理(代理服务端)......

Romanceling
30分钟前
0
0
npm ERR! Unexpected end of JSON ...

npm install 报错: npm ERR! Unexpected end of JSON input while parsing near '..."^2.8.14"},"_hasShrin' npm ERR! A complete log of this run can be found in: ... 打开终端 命令: 第......

大_侠
34分钟前
0
0
Android中的设计模式之责任链模式

参考 《设计模式:可复用面向对象软件的基础 》5.1 Chain of responsibility 职责链 对象行为型模式 《Android源码设计模式解析与实战》第9章 使编程更有灵活性--责任链模式 意图 使多个对象...

newtrek
37分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部