读书人

查询某条数据的上一条和下一条数据解决

发布时间: 2012-03-08 13:30:13 作者: rapoo

查询某条数据的上一条和下一条数据
RT:查询ID为“xxx”的上一条和下一条数据.
注:ID无序,ID可能为GUID.

[解决办法]

探讨
RT:查询ID为“xxx”的上一条和下一条数据.
注:ID无序,ID可能为GUID.

[解决办法]
;with t
as

(
select *,row_number()over(partition by ID order by getdate()) as num from tbl
)
select *from t where num=((select num from t where id='xxx')-1) and num=((select num from t where id='xxx')+1)
[解决办法]
用row_number() over (order by getdate()) 生成一个序号就ok了。
[解决办法]
order by getdate()
无异于随便取两条
没多大实际意义
[解决办法]
探讨
引用:
引用:
当时问了这个出题的人,有相关可区分上一条和下一条数据的列吗?
他说没有,最后没做出来,回家查了查还是没做出来,特来坛子里求助.


那么我是否可以随便取两条呢,只能代表你没有问清楚,等你问清楚了再来问我们。

补充:

SQL code


id city ……

读书人网 >SQL Server

热点推荐