我将在我的网页中进行分页。我想知道哪个最有效
"SELECT * FROM table LIMIT 10,10"
或者
"SELECT * FROM table LIMIT 10 OFFSET 10"
如果是的话,有什么区别,哪个更好,更有效?
我将在我的网页中进行分页。我想知道哪个最有效
"SELECT * FROM table LIMIT 10,10"
或者
"SELECT * FROM table LIMIT 10 OFFSET 10"
如果是的话,有什么区别,哪个更好,更有效?
没有区别。从MySQL 参考 SELECT 语法
[LIMIT {[offset,] row_count | row_count OFFSET offset}]
几个例子
LIMIT 5 // limit the result to the first 5 rows
LIMIT 10,5. // limit the result to 5 rows, beginning with row 11
LIMIT 5 OFFSET 10 // same meaning
我更喜欢写长版本,它是 ANSI 标准,你可以避免错误参数顺序的陷阱。
单独限制:
使用一个参数,该值指定从结果集开头返回的行数:
有两个参数,第一个参数指定要返回的第一行的偏移量,第二个参数指定要返回的最大行数。初始行的偏移量为 0(不是 1):
为了与 PostgreSQL 兼容,MySQL 还支持 LIMIT row_count OFFSET 偏移量语法。
没有区别。提供偏移语法以与 postgres 兼容。见手册页
For compatibility with PostgreSQL, MySQL also supports the LIMIT row_count OFFSET offset syntax.