zoukankan      html  css  js  c++  java
  • 如何在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];
     
     
  • 相关阅读:
    SQL查询
    SQL总结(二)连表查询
    SQL总结(一)基本查询
    SQL游标、函数的使用方法
    理解 Virtual DOM(摘)及评价
    virtual DOM的作用:将DOM的维护工作由系统维护转交给virtual DOM维护
    DOM的回流和重绘(重排、重绘)
    并发编程的核心
    执行流(指令流)的控制层级
    go语言的工资好高
  • 原文地址:https://www.cnblogs.com/bluealine/p/6714059.html
Copyright © 2011-2022 走看看