SQL查詢當前資料上一條和下一條的記錄

2021-06-07 03:01:38 字數 599 閱讀 1508

id是指當前資料news_id引數

方法一:

string presql = "select top 1 * from news where news_id < " + id + " order by news_id desc"

string nextsql = "select top 1 * from news where news_id > " + id + " order by news_id asc"

方法二:

string presql = "select * from [news] where news_id = (select max(news_id) from [news] where news_id<" + id + ")";

string nextsql = "select * from [news] where news_id = (select min(news_id) from [news] where news_id>" + id + ")";

ps:只是這兩種方法,在大資料量的情況下,哪種效率更高,請各位大神幫忙解析下,如果有更好的方法也請提出

SQL查詢當前資料以及上一條和下一條三條記錄

想查詢某個表當前資料以及上一條和下一條的記錄,網上找了一下解決辦法都不如意,按網上的方法可以查詢出三條資料,但是當查詢的這條資料沒有上一條或下一條記錄時就不行了。現在我把解決問題的sql語句放上 理一下思路,明確的查詢三條語句 select from 表名 where id in 當前id的前乙個i...

Mysql 查詢當前資料上一條和下一條的記錄

獲取當前檔案上一條與下一條記錄的原理是上一條的sql語句,從news表裡按從大到小的順序選擇一條比當前id小的新聞,下一條的sql語句,從news表裡按從小到大的順序選擇一條比當前id大的新聞。如果id是主鍵或者有索引,可以直接查詢 方法1 sql view plain copy 1.select ...

Mysql 查詢當前資料上一條和下一條的記錄

獲取當前檔案上一條與下一條記錄的原理是上一條的sql語句,從news表裡按從大到小的順序選擇一條比當前id小的新聞,下一條的sql語句,從news表裡按從小到大的順序選擇一條比當前id大的新聞。如果id是主鍵或者有索引,可以直接查詢 方法1 1.select from table a where i...