好吧,这对某人来说应该很容易——
我正在尝试选择数据库中的特定行
SELECT * FROM customers LIMIT 10,20
但它总是返回 20 行
发生了什么,为什么最小值没有任何价值?
LIMIT X, Y
意味着你Y
从 number 开始得到结果X+1
。
所以如果你想要从 11 到 20 的值,你需要使用:
LIMIT 10, 10
你想要做limit 10
或lmit 0, 10
10 个结果
子句的第二个数字LIMIT
是要返回的行数,而不是最后一个索引。如果您只想要 10 行,请在查询限制子句中替换20
为。10
SELECT *
FROM customers
LIMIT 10, 10
Limit
有两个参数(x,y)
意味着你从x+1 to y
. 来自 MySQL 手册:
LIMIT 子句可用于限制 SELECT 语句返回的行数。LIMIT 接受一个或两个数字参数,它们都必须是非负整数常量(使用准备好的语句时除外)。
有两个参数,第一个参数指定要返回的第一行的偏移量,第二个参数指定要返回的最大行数。初始行的偏移量为 0(不是 1):
SELECT * FROM tbl LIMIT 5,10;
检索行 6-15 要检索从某个偏移量到结果集末尾的所有行,您可以为第二个参数使用一些较大的数字。
此语句检索从第 96 行到最后一行的所有行:
SELECT * FROM tbl LIMIT 95,18446744073709551615;
使用一个参数,该值指定从结果集开头返回的行数:
SELECT * FROM tbl LIMIT 5;
检索前 5 行 换句话说,LIMIT row_count 等价于 LIMIT 0, row_count。