有朋友問了數據庫ID不連續,怎麼獲取上一篇和下一篇的文章?(不是全部狀況都適用)

呃 (⊙o⊙)…,逆天很久沒寫SQL了,EF用的時間長了,SQL都不怎麼熟悉了。。。。。。【SQL水平比較菜,大牛勿噴】ui

方法不少種,說個最多見的處理blog

 

由於id是自增加的,因此通常狀況下下一篇文章的ID都是大於當前文章ID的(guid的主鍵不適合這種方法,不根據建立時間排序的不適合【博客園文章都是根據建立時間】排序

EF的寫法:(參考)
有其餘約束的能夠往上加(好比文章不能被標記爲刪除等)
var articleOne = ArticleService.PageLoad(a => a.Id < model.Id ).OrderByDescending(a => a.CreateTime).FirstOrDefault(); var articleOne = ArticleService.PageLoad(a => a.Id < model.Id ).OrderBy(a => a.CreateTime).FirstOrDefault();
相關文章
相關標籤/搜索