国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

SQL分頁語句的三種方案

2020-07-25 13:02:30
字體:
來源:轉載
供稿:網友

方法一:

復制代碼 代碼如下:

SELECT TOP 頁大小 *
FROM table1
WHERE id NOT IN
          (
          SELECT TOP 頁大小*(頁數-1) id FROM table1 ORDER BY id
          )
ORDER BY id

方法二:

復制代碼 代碼如下:

SELECT TOP 頁大小 *
FROM table1
WHERE id >
          (
          SELECT ISNULL(MAX(id),0) 
          FROM
                (
                SELECT TOP 頁大小*(頁數-1) id FROM table1 ORDER BY id
                ) A
          )
ORDER BY id

方法二倒序:

復制代碼 代碼如下:

SELECT TOP 頁大小 * 
FROM table1 
WHERE ID <= 
    ( 
    SELECT ISNULL(MIN(ID),(SELECT MAX(ID) FROM table1 )) 
    FROM
        ( 
        SELECT TOP (頁大小*(頁數-1)) ID FROM tbl_files ORDER BY ID DESC
        ) A 
    ) 
ORDER BY ID DESC

方法三

復制代碼 代碼如下:

SELECT TOP 頁大小 * 
FROM
        (
        SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM table1
        ) A
WHERE RowNumber > 頁大小*(頁數-1)

分頁方案二:(利用ID大于多少和SELECT TOP分頁)效率最高,需要拼接SQL語句
分頁方案一:(利用Not In和SELECT TOP分頁)   效率次之,需要拼接SQL語句
分頁方案三:(利用SQL的游標存儲過程分頁)    效率最差,但是最為通用

PS:這三條方案是在網上搜到的,做分頁的時候選用的方案二,發現直接套用語句不能滿足要求,因為根據發帖順序,是需要倒序排列的,就是最新發帖需要排到最前面,于是仿照方案二改成了倒序,希望對大家有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新密市| 商城县| 阜宁县| 贵南县| 手游| 昌都县| 兴国县| 尼玛县| 若尔盖县| 沿河| 荣昌县| 城固县| 延吉市| 伊通| 大理市| 漳浦县| 司法| 大庆市| 清涧县| 英超| 大冶市| 泸水县| 曲水县| 大关县| 黔江区| 宁津县| 苏尼特右旗| 香河县| 溧水县| 汽车| 淳化县| 竹溪县| 玉门市| 横峰县| 恭城| 长子县| 营口市| 营口市| 双城市| 哈巴河县| 永仁县|