[はじめに] 私のこのコードは、大量のデータがある場合のページングの効率を向上させるためのテストコードです - ページングの効率を向上させるために: ページングを実装するときは、表示データを読み取るだけで、データベースを作成する必要がありますデータベース内の「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 サイトの他の関連記事を参照してください。