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

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

2014-06-11 17:22 786 查看
如果ID是主键或者有索引,可以直接查找:方法一:查询上一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误):
select * from table_a where id = (select id from table_a where id < {$id} [and other_conditions] order by id desc limit 1) [and other_conditions];
查询下一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误):
select * from table_a where id = (select id from table_a where id > {$id} [and other_conditions] order by id asc limit 1) [and other_conditions];
方法二:查询上一条记录的SQL语句((如果有其他的查询条件记得加上other_conditions以免出现不必要的错误))
select * from table_a where id = (select max(id) from table_a where id < {$id} [and other_conditions]) [and other_conditions];
查询下一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误):
select * from table_a where id = (select min(id) from table_a where id > {$id} [and other_conditions]) [and other_conditions];
本文出自 “Spring罂粟” 博客,请务必保留此出处http://itxwh.blog.51cto.com/5362423/1425061
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: