SQL Server 獲取數據的總記錄數,有兩種方式:
1.先分頁獲取數據,然后再查詢一遍數據庫獲取到總數量
2.使用count(1) over()獲取總記錄數量
SELECT
*
FROM
(
SELECT
ROW_NUMBER() OVER(ORDER BY Id DESC) rn,
COUNT(1) OVER() AS TotalCount,
Id
FROM
dbo.T_User
)a
WHERE
a.rn BETWEEN 1 AND 5
第二種方式既分頁還能獲取到總記錄數量。就是多一個字段,如果獲取一次數據較多的話,會浪費一些流量。
如果使用第一種的話,會多訪問一次數據庫,增加一次數據連接的關閉和打開,會消耗數據庫資源。
第二種方式還是我同事開始使用的,然后我們就這樣使用了。
注意:目前發現只有sqlserver有,mysql沒有這個效果,大家如果發現其他的可以使用
總結
以上所述是小編給大家介紹的SQL Server 在分頁獲取數據的同時獲取到總記錄數,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
您可能感興趣的文章:- Oracle、MySQL和SqlServe三種數據庫分頁查詢語句的區別介紹
- Android操作SQLite數據庫(增、刪、改、查、分頁等)及ListView顯示數據的方法詳解
- jQuery+Ajax+PHP+Mysql實現分頁顯示數據實例講解
- oracle,mysql,SqlServer三種數據庫的分頁查詢的實例
- MSSQL MySQL 數據庫分頁(存儲過程)
- MySQL數據庫查看數據表占用空間大小和記錄數的方法
- sql 查詢記錄數結果集某個區間內記錄
- MYSQL速度慢的問題 記錄數據庫語句
- SQL小技巧 又快又簡單的得到你的數據庫每個表的記錄數