智睿软件_技术交流论坛综合站长Web程序开发 → SQL查询根据ID取前后记录ID号


  共有21054人关注过本帖树形打印

主题:SQL查询根据ID取前后记录ID号

帅哥哟,离线,有人找我吗?
zhirui
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:520 积分:8740 威望:0 精华:5 注册:2009-07-07
SQL查询根据ID取前后记录ID号  发帖心情 Post By:2009-08-20 10:02:57

我写得MAYBE有点烦,效率上不高,需要两个Select语句
假设取Table1表中记录号为5的前后记录的ID值。其中ID为自增长。
select top 1 id from table1 where id<5 order by id desc
select top 1 id from table1 where id>5 order by id
也可以在Table表中增加一个连续增长的字段,第N条记录值为N。这样索取也比较方便。
如果需要用一条语句来做的话,可以这样
select * from(
select top 1 id from table1 where id<5 order by id desc
union
select top 1 id from table1 where id>5 order by id ) as temp

考试管理系统,适合中小学校,驾校,技术认证考试 支持(0中立(0反对(0回到顶部