当前位置: 代码迷 >> Sql Server >> 请问怎么选出3行记录
  详细解决方案

请问怎么选出3行记录

热度:86   发布时间:2016-04-27 21:42:11.0
请教如何选出3行记录
已知条件:一个id   号
求:此id号   上面的和下面的id号



id   title
1     a
3     b
5     c  
7     d
8     e
9     f

已知当前id   号为7   ,求如何取得   id   号5和8

------解决方案--------------------
select top1 id from t where id <7 order by id desc

select top1 id from t where id> 7 order by id

*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)

最新版本:20070212

http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
------解决方案--------------------
可以使用临时表
SELECT IDENTITY(int,1,1) rownum,aid,aname into #temp from 表

SELECT min(rownum) FROM #temp WHERE rownum > (SELECT rownum FROM #temp WHERE id = 7)
union all
SELECT rownum FROM #temp WHERE rownum = (SELECT rownum FROM #temp WHERE id = 7)union all
SELECT max(rownum) FROM #temp WHERE rownum < (SELECT rownum FROM #temp WHERE id = 7)

模拟Oracle的rownum效果

好象...
  相关解决方案