如果最后一条记录是35记录,我怎样才能获得表格的记录34?
答案 0 :(得分:20)
最简单的方法
SELECT * FROM tab ORDER BY col DESC LIMIT 1,1
这将从第二个LIMIT开始选择一个记录1,1意味着先跳过并选择下一个
必须完成订单,以便最后一个 提到的col很可能是id
如果您知道所需记录的编号,但为什么不能选择id = 34的位置?
答案 1 :(得分:12)
如果知道有35条记录,则需要limit 1 offset 34
。
如果要从任何集合中获取倒数第二个元素,可以反转集合的顺序并选择一个元素,偏移一个元素。您可以通过首先选择反向排序集的前两个元素来自己实现,然后反转集并选择第一个元素:
select * from
(select * from my_table order by id desc limit 2) table_alias
order by id limit 1