如何在SQL中选择"上一个"和"下一个"记录?

jes*_*vin 4 sql sql-server pagination

我正在我的网站上建立一个博客帖子详细信息页面,它将显示一个类似于打字机博客文章工作方式的" 上一个 "和" 下一个 "链接.见下面的例子. 替代文字

我想知道是否有一种方法可以查询数据库,该数据库完成类似下面的图像,它选择"当前"记录(黄色)进行显示,但是当按PublishDate排序时,还会选择下一个和上一个记录(绿色) .

替代文字

另外,为了澄清,我正在使用的数据库表具有唯一的发布日期.很抱歉,示例图像显示了具有相同PublishDate的多个记录.

小智 11

你不.SQL没有先前的下一个概念.你基本上要求在你已经拥有的那个之后的有序查询中的下一个前1(例如按日期).这意味着您需要拥有/强制订单(按订单排序)进行过滤.