您的位置:首页 > 数据库 > MySQL

Mysql 查询当前数据上一条和下一条的记录

2016-02-19 17:36 681 查看
获取当前文件上一条与下一条记录的原理是上一条的sql语句,从news表里按从大到小的顺序选择一条比当前ID小的新闻,下一条的sql语句,从news表里按从小到大的顺序选择一条比当前ID大的新闻。

最简的就是如下写法

上一条记录的SQL语句:
select top 1 * from news where newsid<id order by newsid DESC
下一条记录的SQL语句:
select top 1 * from news where newsid>id order by newsid ASC


如果ID是主键或者有索引,可以直接查找:

方法1:

1.select * from table_a where id = (select id from table_a where id < {$id} order by id desc limit 1);
2.select * from table_a where id = (select id from table_a where id > {$id} order by id asc limit 1);


方法2:

1.select * from table_a where id = (select max(id) from table_a where id < {$id});
2.select * from table_a where id = (select min(id) from table_a where id > {$id});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: