基于Sql server數(shù)據(jù)庫的四種分頁方式總結(jié)
下面小編就為大家分享一篇基于sqlserver的四種分頁方式總結(jié),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧。...
下面小編就為大家分享一篇基于sqlserver的四種分頁方式總結(jié),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧。
第一種:ROW_NUMBER() OVER()方式
select * from (
select *, ROW_NUMBER() OVER(Order by ArtistId ) AS RowId from ArtistModels
) as b
where RowId between 10 and 20
---where RowId BETWEEN 當前頁數(shù)-1*條數(shù) and 頁數(shù)*條數(shù)---
執(zhí)行結(jié)果是:
第二種方式:offset fetch next方式(SQL2012以上的版本才支持:推薦使用 )
select * from ArtistModels order by ArtistId offset 4 rows fetch next 5 rows only
--order by ArtistId offset 頁數(shù) rows fetch next 條數(shù) rows only ----
執(zhí)行結(jié)果是:
第三種方式:--top not in方式 (適應(yīng)于數(shù)據(jù)庫2012以下的版本)
select top 3 * from ArtistModels
where ArtistId not in (select top 15 ArtistId from ArtistModels)
------whereIdnotin(selecttop條數(shù)*頁數(shù) ArtistIdfrom ArtistModels)
執(zhí)行結(jié)果:
第四種方式:用存儲過程的方式進行分頁
CREATE procedure page_Demo
@tablename varchar(20),
@pageSize int,
@page int
AS
declare @newspage int,
@res varchar(100)
begin
set @newspage=@pageSize*(@page - 1)
set @res='select * from ' +@tablename+ ' order by ArtistId offset '+CAST(@newspage as varchar(10)) +' rows fetch next '+ CAST(@pageSize as varchar(10)) +' rows only'
exec(@res)
end
EXEC page_Demo @tablename='ArtistModels',@pageSize=3,@page=5
執(zhí)行結(jié)果:
ps:今天搞了一下午的分頁,通過上網(wǎng)查資料和自己的實驗,總結(jié)了四種分頁方式供大家參考,有問題大家一起交流學(xué)習(xí)。
- SQL Server 2016數(shù)據(jù)庫快照代理過程詳解
- SQL Server 全文搜索功能、全文索引方式介紹
- 關(guān)于SQL Serve數(shù)據(jù)庫r帳號被禁用的處理方法
- SQL數(shù)據(jù)庫查詢優(yōu)化技巧提升網(wǎng)站訪問速度的方法
- SQL數(shù)據(jù)庫開發(fā)中的SSIS 延遲驗證方法
- SQL Server數(shù)據(jù)庫建立新用戶及關(guān)聯(lián)數(shù)據(jù)庫的方法教程
- Oracle數(shù)據(jù)庫多條sql執(zhí)行語句出現(xiàn)錯誤時的控制方式
- Oracle數(shù)據(jù)庫基礎(chǔ):程序中調(diào)用sqlplus的方式
- oracle數(shù)據(jù)庫通過sqlplus連接的幾種方式介紹
- oracle數(shù)據(jù)庫常用分析函數(shù)與聚合函數(shù)的用法
SQL Server 2016數(shù)據(jù)庫快照代理過程詳解
本文我們通過SQL Server 2016一個實例數(shù)據(jù)表,給大家詳細分析了快照代理過程遇到的問題和解決辦法,并對快照生成過程做了詳細說明,以下是全部內(nèi)容:...
SQL Server 全文搜索功能、全文索引方式介紹
SQL Server 的全文搜索(Full-Text Search)是基于分詞的文本檢索功能,依賴于全文索引。全文索引不同于傳統(tǒng)的平衡樹(B-Tree)索引和列存儲索引,它是由數(shù)據(jù)表構(gòu)成的,稱作倒轉(zhuǎn)索引(Invert Index),存儲分詞和行的唯一鍵的映射關(guān)系。...
關(guān)于SQL Serve數(shù)據(jù)庫r帳號被禁用的處理方法
若發(fā)現(xiàn)SQL Serve所有帳號不小心被禁用了,這個時候怎么辦?用重裝嗎?不用,仔細看小白是怎么一步一步解開這個謎題的。首先需要Windows帳號設(shè)置里重新添加一個新帳號。并將其添加到...
SQL數(shù)據(jù)庫查詢優(yōu)化技巧提升網(wǎng)站訪問速度的方法
在這篇文章中,我將介紹如何識別導(dǎo)致性能出現(xiàn)問題的查詢,如何找出它們的問題所在,以及快速修復(fù)這些問題和其他加快查詢速度的方法。 你一定知道,一個快速訪問的網(wǎng)站能讓用...
SQL數(shù)據(jù)庫開發(fā)中的SSIS 延遲驗證方法
驗證是一個事件,該事件在Package執(zhí)行時,第一個被觸發(fā),驗證能夠避免SSIS引擎執(zhí)行一個有異常的Package或Task。延遲驗證(DelayValidation)是把驗證操作延遲到Package真正運行(run-ti...
SQL Server數(shù)據(jù)庫建立新用戶及關(guān)聯(lián)數(shù)據(jù)庫的方法教程
本文講的是SQLserver數(shù)據(jù)庫創(chuàng)建新用戶方法以及賦予此用戶特定權(quán)限的方法,非常的簡單實用,有需要的小伙伴可以參考下...
Oracle數(shù)據(jù)庫多條sql執(zhí)行語句出現(xiàn)錯誤時的控制方式
多條sql執(zhí)行時如果在中間的語句出現(xiàn)錯誤,后續(xù)會不會直接執(zhí)行,如何進行設(shè)定,以及其他數(shù)據(jù)庫諸如Mysql是如何對應(yīng)的,這篇文章將會進行簡單的整理和說明。環(huán)境準備使用Oracle的精簡...
Oracle數(shù)據(jù)庫基礎(chǔ):程序中調(diào)用sqlplus的方式
通過sqlplus可以連接數(shù)據(jù)庫根據(jù)用戶權(quán)限進行數(shù)據(jù)或者設(shè)定操作,但是需要交互操作并返回結(jié)果,這篇文章介紹一下如何在程序中使用sqlplus。環(huán)境準備使用Oracle的精簡版創(chuàng)建docker...
oracle數(shù)據(jù)庫通過sqlplus連接的幾種方式介紹
分享一篇關(guān)于Oracle通過sqlplus連接數(shù)據(jù)庫的方式,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧...
oracle數(shù)據(jù)庫常用分析函數(shù)與聚合函數(shù)的用法
今天小編就為大家分享一篇關(guān)于oracle數(shù)據(jù)庫常用分析函數(shù)與聚合函數(shù)的用法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧。應(yīng)之前的...