mysql 怎么用查询语句查询某条数据的前后两条数据
发布网友
发布时间:2022-04-27 02:49
我来回答
共1个回答
热心网友
时间:2022-04-07 16:34
1、执行sql语句:SELECT * FROM `article` WHERE catalog_id=13 and article_id<70+2 and article_id>70-2;
2、在实际使用的时候70这里是要传参数进去的,当然是参数+2和参数-2,应该是大于等于和小于等于。语法肯定没错,只是写那么个意思,你不想要70这个值只需要在程序里面把他去掉就可以了。
如果你说前后的article_id不是固定间隔的,那也有办法,你可以分别查两次,然后用union把数据组合在一起,比如:SELECT * FROM `article` WHERE catalog_id=13 and article_id>70 order by article_id limit 0,2 union SELECT * FROM `article` WHERE catalog_id=13 and article_id<70 order by article_id desc limit 0,2;这样查询效率会低,暂时想到的就是这个方法了