ホームページ  >  記事  >  データベース  >  MySQL でデータ ページングの効率を向上させる方法

MySQL でデータ ページングの効率を向上させる方法

巴扎黑
巴扎黑オリジナル
2017-03-19 10:54:171187ブラウズ

[はじめに] 私のこのコードは、大量のデータがある場合のページングの効率を向上させるためのテストコードです - ページングの効率を向上させるために: ページングを実装するときは、表示データを読み取るだけで、データベースを作成する必要がありますデータベース内の「TestForPaging」は、まず TestForPaginggo--Create Table SomeDatacreate table SomeData(id int

私のこのコードは、大量のデータがある場合にページングの効率を向上させるためのテストコードです
​​--ページングの効率を向上させる:ページングを実装するときは表示データのみを読み取るため、最初にデータベース内にデータベース「TestForPaging」を作成する必要があります。」
TestForPaging を使用
go
--テーブル SomeData を作成
テーブル SomeData を作成
(
id int 主キー,
name varchar( 30) null,
説明テキスト
)
go
-- SomeData 値に挿入 (1,'num1','Item 1')
go
SomeData 値に挿入 (2,'num2','Item 2')
go
SomeDataの値(3,'num3','Item 3 ')に挿入
go
SomeDataの値(4,'num4','記事4')に挿入
go
SomeDataの値(5,'num5') ,'記事 5')
go
-- データ エントリの総数
select count(*) from SomeData
go
-- 各レコードにデータ レベルを追加
select name,description,ROW_NUMBER() over(order by id desc)as dataLevel from SomeData
go

-- データ レベル間の指定されたデータ エントリを表示します

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
-- 指定されたデータ レベル間のデータ エントリを表示するストアド プロシージャを実装します
プロシージャ GetDataPagged を作成します
(
@startRowIndex int,
@maximumRows int,
@sort varchar
)
AS
--必ずsortを指定してください
if len(@sort) =0
set @sort='id'
--パラメータを使用してクエリを実行します
select dataLevel,name,description from
(select name,description,row_number()over (@sort desc で並べ替え) as dataLevel from SomeData) AS datawithleverl
WHERE dataLevel > (@startRowIndex*10) AND dataLevel go

以上がMySQL でデータ ページングの効率を向上させる方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。