读书人

请问怎么选出3行记录

发布时间: 2012-02-27 10:00:22 作者: rapoo

请教如何选出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效果

好象...

读书人网 >SQL Server

热点推荐