mysql如何抓到limit的最大与最小值?

假设我透过 limit 筛选数据
数据有六十笔
ID就是1~60

"SELECT ...
LIMIT 0, 20 "

也就是找出 1~20笔
如果是

"SELECT ...
LIMIT 20, 20 "

就是20~40笔

那我要如何找出當前这一个 limit 的最小与最大ID?
也就是 20 、 40 ?而不會是 1 、60

阅读 5.7k
3 个回答
SELECT max(`id`), min(`id`)
FROM (
    SELECT `id`
    FROM ca_test
    ORDER BY `id` ASC
    LIMIT 20, 20
) a;

MINMAX函数了解一下

关于这个问题,你需要搞清楚limit的含义。

limit 起始数量(offset),要获取的数量(rows)

limit 的对象不是数据的ID,而是分页的数量。

如果你想获取最大或最小的ID就select min/max(id)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题