如何在MySQL中查询当前数据上一条和下一条的记录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在MySQL中查询当前数据上一条和下一条的记录相关的知识,希望对你有一定的参考价值。

如果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];

 

 
 

以上是关于如何在MySQL中查询当前数据上一条和下一条的记录的主要内容,如果未能解决你的问题,请参考以下文章

如何获取SQL查询当前数据上一条和下一条的记录?

asp中如何读取当前记录的上一条和下一条记录

MySQL实现根据当前ID读取上一条和下一条记录

mysql获取上一条和下一条记录id

关于查询sql中数据上一条记录和下一条记录的sql语句......

sql查询上一条记录和下一条记录