如果我想在MySQL第1行到第500行,我应该使用LIMIT 0,500或LIMIT,1,500吗?有什么不同?谢谢!
答案 0 :(得分:17)
第一个从整个结果的第一个记录开始,而第二个记录从结果的第二个记录开始。
考虑以下记录
ID
1 -- index of the first record is zero.
2
3
4
5
6
如果你执行
LIMIT 0, 3
-- the result will be ID: 1,2,3
LIMIT 1, 3
-- the result will be ID: 2,3,4
OTHER(S)
答案 1 :(得分:2)
在MySQL中,LIMIT n1,n2的含义是:
n1 : starting index n2 : number of record/data you want to show
例如:
ID ------------------------- 1 ------------ > index 0 2 3 4 5 6 7 8 9 10 ------------ > index 9
现在,如果您编写像
这样的查询SELECT * from tbl_name LIMIT 0,5 Output : 1 2 3 4 5
如果您编写像
这样的查询SELECT * from tbl_name LIMIT 2,7 Output : 3 4 5 6 7 8 9
答案 2 :(得分:0)
@JohnWoo那不正确。没有指定SELECT
语句中没有ORDER BY
子句的行的顺序。因此,即使通过目视查看这种查询的输出顺序,它看起来似乎是特定的顺序,但是不保证该顺序,因此不可靠。如果您需要以某种方式订购结果集,则必须使用ORDER BY
子句。
答案 3 :(得分:0)
1
2
3
4
5 ------------>索引0
6
7
8
9 ------------> 5索引后加4值
10
如果您希望数据从5到9,那么查询应该是
SELECT * from table_name LIMIT 5,4