MySQL提高分頁效率
更新時間:2015年10月02日 10:23:11 投稿:lijiao
本文分享的這段代碼是大數(shù)據(jù)量時提高分頁的效率的測試代碼,感興趣的小伙伴可以參考一下
下面就是大數(shù)據(jù)量時提高分頁的效率的測試代碼,分享給大家。
--提高分頁效率:實現(xiàn)分頁時只讀取顯示數(shù)據(jù),需要先在數(shù)據(jù)庫創(chuàng)建數(shù)據(jù)庫“TestForPaging” use TestForPaging go --創(chuàng)建表SomeData create table SomeData ( id int primary key, name varchar(30) null, description text ) go --插入數(shù)據(jù) insert into SomeData values(1,'num1','第1條') go insert into SomeData values(2,'num2','第2條') go insert into SomeData values(3,'num3','第3條') go insert into SomeData values(4,'num4','第4條') go insert into SomeData values(5,'num5','第5條') go --數(shù)據(jù)條目總數(shù) select count(*) from SomeData go --給每條記錄添加一個數(shù)據(jù)級別 select name,description,ROW_NUMBER() over(order by id desc)as dataLevel from SomeData go --查看指定的數(shù)據(jù)級別間的數(shù)據(jù)條目 select dataLevel,name,description from (select name,description,row_number() over(order by id desc)as dataLevel from SomeData) as datawithleverl where dataLevel between 2 and 4 go --實現(xiàn)查看指定的數(shù)據(jù)級別間的數(shù)據(jù)條目的存儲過程 create procedure GetDataPaged ( @startRowIndex int, @maximumRows int, @sort varchar ) AS --確保指定sort if len(@sort)=0 set @sort='id' --帶參數(shù)的查詢 select dataLevel,name,description from (select name,description,row_number() over(order by @sort desc)as dataLevel from SomeData) AS datawithleverl WHERE dataLevel > (@startRowIndex*10) AND dataLevel <= (@startRowIndex*10 + @maximumRows) go
以上就是本文的的全部內(nèi)容,希望對大家的學習有所幫助。
相關(guān)文章
運維角度淺談MySQL數(shù)據(jù)庫優(yōu)化(李振良)
一個成熟的數(shù)據(jù)庫架構(gòu)并不是一開始設計就具備高可用、高伸縮等特性的,它是隨著用戶量的增加,基礎(chǔ)架構(gòu)才逐漸完善。這篇博文主要談MySQL數(shù)據(jù)庫發(fā)展周期中所面臨的問題及優(yōu)化方案2015-07-07windows2008 64位系統(tǒng)下MySQL 5.7綠色版的安裝教程
這篇文章主要給大家分享了在windows2008 64位系統(tǒng)下MySQL 5.7綠色版的安裝教程,文中將安裝步驟介紹的非常詳細,相信會對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧。2017-05-05mysql?count()函數(shù)不計算null和空值問題
這篇文章主要介紹了mysql?count()函數(shù)不計算null和空值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08