Skip to content

Latest commit

 

History

History
70 lines (49 loc) · 1.35 KB

File metadata and controls

70 lines (49 loc) · 1.35 KB

限制查询结果的数量

有些查询只需要返回部分结果,例如分页列表、只看最新 10 条记录、跳过前几条后再取若干条,这时就需要限制返回数量。MySQL 中通常使用 LIMIT 完成。

指定初始位置

如果既要指定起始位置,又要指定返回条数,可以使用:

SELECT 字段列表
FROM 表名
LIMIT 起始位置, 返回条数;

例如:

SELECT *
FROM article
LIMIT 5, 10;

这表示:

  • 跳过前 5 条记录
  • 然后返回接下来的 10 条记录

这种写法非常适合分页查询。比如每页 10 条,第 2 页通常可以写成:

SELECT *
FROM article
LIMIT 10, 10;

不指定初始位置

如果只想取前若干条记录,可以直接写返回条数:

SELECT 字段列表
FROM 表名
LIMIT 返回条数;

例如只取前 5 条:

SELECT *
FROM article
LIMIT 5;

这通常表示“从第 1 条开始,取 5 条”。

在实际使用中,LIMIT 通常会和排序结合:

SELECT *
FROM article
ORDER BY created_at DESC
LIMIT 5;

这样就能得到“最新的 5 条记录”。

小结

LIMIT 解决的是“返回多少条”的问题。只写一个数字表示取前 N 条,写两个数字则表示“从某个位置开始取 N 条”。在分页查询里,它通常会和 ORDER BY 一起使用。