SQL Server 在分頁(yè)獲取數(shù)據(jù)的同時(shí)獲取到總記錄數(shù)
SQL Server 獲取數(shù)據(jù)的總記錄數(shù),有兩種方式:
1.先分頁(yè)獲取數(shù)據(jù),然后再查詢一遍數(shù)據(jù)庫(kù)獲取到總數(shù)量
2.使用count(1) over()獲取總記錄數(shù)量
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
第二種方式既分頁(yè)還能獲取到總記錄數(shù)量。就是多一個(gè)字段,如果獲取一次數(shù)據(jù)較多的話,會(huì)浪費(fèi)一些流量。
如果使用第一種的話,會(huì)多訪問(wèn)一次數(shù)據(jù)庫(kù),增加一次數(shù)據(jù)連接的關(guān)閉和打開,會(huì)消耗數(shù)據(jù)庫(kù)資源。
第二種方式還是我同事開始使用的,然后我們就這樣使用了。
注意:目前發(fā)現(xiàn)只有sqlserver有,mysql沒有這個(gè)效果,大家如果發(fā)現(xiàn)其他的可以使用
總結(jié)
以上所述是小編給大家介紹的SQL Server 在分頁(yè)獲取數(shù)據(jù)的同時(shí)獲取到總記錄數(shù),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
SQL學(xué)習(xí)筆記六 union聯(lián)合結(jié)果集使用
SQL學(xué)習(xí)筆記六 union聯(lián)合結(jié)果集使用,需要的朋友可以參考下。2011-08-08
清空MSSQL日志 與set recovery simple
清空MSSQL日志 與set recovery simple...2007-10-10
Sql Server中清空所有數(shù)據(jù)表中的記錄
我這里介紹的是刪除數(shù)據(jù)庫(kù)的所有數(shù)據(jù),因?yàn)閿?shù)據(jù)之間可能形成相互約束關(guān)系,刪除操作可能陷入死循環(huán),二是這里使用了微軟未正式公開的sp_MSForEachTable存儲(chǔ)過(guò)程2013-10-10
SQL Server利用sp_spaceused如何查看表記錄存在不準(zhǔn)確的情況
這篇文章主要給大家介紹了關(guān)于SQL Server利用sp_spaceused如何查看表記錄存在不準(zhǔn)確情況的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用SQL Server具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
c#連接數(shù)據(jù)庫(kù)及sql2005遠(yuǎn)程連接的方法
這篇文章主要介紹了c#連接sql數(shù)據(jù)庫(kù)及sql2005遠(yuǎn)程連接的方法,大家參考使用吧2014-01-01

