Maison > base de données > tutoriel mysql > le corps du texte

MySQL améliore l'efficacité de la pagination des données

黄舟
Libérer: 2017-02-20 11:48:31
original
1255 Les gens l'ont consulté

[Introduction] Ce code est un code de test pour améliorer l'efficacité de la pagination lorsqu'il y a une grande quantité de données - Améliorer l'efficacité de la pagination : lisez uniquement les données d'affichage lors de la pagination, vous devez créer une base de données "TestForPaging " dans la base de données, utilisez d'abord TestForPaginggo- -Create table SomeDatacreate table SomeData(id int

Mon code est un code de test pour améliorer l'efficacité de la pagination lorsqu'il y a une grande quantité de données
--Améliorer la pagination efficacité : lisez uniquement les données d'affichage lors de la mise en œuvre de la pagination. Vous devez d'abord créer la base de données "TestForPaging" dans la base de données

use TestForPaging
go
Copier après la connexion

--Créer une table SomeData

create table SomeData
(
id int primary key,
name varchar(30) null,
description text
)
go
Copier après la connexion

--Insérer des données

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
Copier après la connexion

--Nombre total d'entrées de données

select count(*) from SomeData
go
Copier après la connexion

--Ajouter un niveau de données à chaque enregistrement

select name,description,ROW_NUMBER() over(order by id desc)as dataLevel from SomeData
go
Copier après la connexion

--Afficher le niveau de données spécifié Entrées de données entre

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
Copier après la connexion

--Implémenter la procédure stockée pour afficher les entrées de données entre les niveaux de données spécifiés

create procedure GetDataPaged
(
@startRowIndex int,
@maximumRows int,
@sort varchar
)
AS
Copier après la connexion

--Assurez-vous de spécifier le tri

if len(@sort)=0
set @sort='id'
Copier après la connexion

--Requête avec paramètres

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
Copier après la connexion

Ce qui précède est le contenu de MySQL pour améliorer l'efficacité de la pagination des données. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www .php.cn)


!
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal