日期:2014-05-16  浏览次数:20692 次

mysql 查询一条记录的上一条和下一条记录
下面是查询mysql的 content表中id=3的记录的前一条和后一条记录的sql
把条件中的3更换成其他的ID,可以查任意ID的的前一条和后一条记录

SELECT * FROM content WHERE id IN (SELECT CASE WHEN SIGN(id - 3) > 0 THEN MIN(id) WHEN SIGN(id - 3) < 0 THEN MAX(id) END AS id
FROM content WHERE id <> 3 GROUP BY SIGN(id - 3) ORDER BY SIGN(id - 3)) ORDER BY id ASC;
1 楼 east_java 2010-01-07  
这么复杂,