You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LIMIT(5,3)语句失效:如何查询Employees表第5-7条记录?

问题排查与解决办法

嘿,我来帮你看看这个查询的问题所在~

你执行的语句没生效,主要有两个关键问题:

  • LIMIT语法错误:MySQL的LIMIT子句不需要加括号,你写的LIMIT(5,3)不符合语法规范,数据库没法识别这种写法。
  • 偏移量计数逻辑错了:LIMIT的第一个参数是偏移量,是从0开始计数的,不是从1开始。如果想取第5、6、7条记录,偏移量应该是4(第1条对应偏移0,第5条就对应偏移4),而不是5——要是写偏移5的话,会从第6条开始取,就漏掉了第5条。

正确的SQL语句

调整后的正确查询语句应该是这样:

SELECT * FROM Employees ORDER BY EmployeeID LIMIT 4, 3;

可选的更直观写法(适用于支持窗口函数的数据库)

如果你的数据库是MySQL 8.0+、PostgreSQL或者SQL Server这类支持窗口函数的,也可以用ROW_NUMBER()来实现,这种写法不用纠结偏移量,直接指定行号范围就行,可读性更强:

SELECT * FROM (
    SELECT *, ROW_NUMBER() OVER(ORDER BY EmployeeID) AS row_num
    FROM Employees
) AS temp_table
WHERE row_num BETWEEN 5 AND 7;

内容的提问来源于stack exchange,提问作者Archita Sundaray

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 04:26:57