欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

mysql 数据库根据id 查找其他相邻的数据

程序员文章站 2022-06-16 10:42:35
...
比如我有一个article的表(总共有 9 条数据)
有一条数据 id为8
我想查出 id接近8 的其他相邻的4条数据 结果为:9,1,2,3

如果 id 为1 结果为 :2,3,4,5


回复讨论(解决方案)

select *from article where id in (id+1,id+2,id+3,id+4);
试试行不行

通过mysql语句查询比较难,最直接简单的方式可以通过php去处理查询

SELECT ABS(id-8),* FROM article ORDER BY 1
(d-8表示id与8的差,如果id值是8那么差为0,如果id值为9那么差是-1,如果id值是7那么差为1
ABS(id-8)表示id与8的差的绝对值,绝对着就是把负数变为正数,如果id值是8那么差为0,如果id值为9那么差是1,如果id值是7那么差还是为1)
谢谢 ,不过最后找到答案了