Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL Data - La meilleure façon d'implémenter la pagination ?

De la documentation MySQL :

La clause LIMIT peut être utilisée pour limiter le nombre de lignes renvoyées par l'instruction SELECT. LIMIT prend un ou deux arguments numériques, qui doivent tous deux être des constantes entières non négatives (sauf lors de l'utilisation d'instructions préparées).

Avec deux arguments, le premier argument spécifie le décalage de la première ligne à renvoyer et le second spécifie le nombre maximum de lignes à renvoyer. Le décalage de la ligne initiale est 0 (et non 1) :

SELECT * FROM tbl LIMIT 5,10;  # Retrieve rows 6-15

Pour récupérer toutes les lignes à partir d'un certain décalage jusqu'à la fin du jeu de résultats, vous pouvez utiliser un grand nombre pour le deuxième paramètre. Cette instruction récupère toutes les lignes de la 96e ligne à la dernière :

SELECT * FROM tbl LIMIT 95,18446744073709551615;

Avec un argument, la valeur spécifie le nombre de lignes à renvoyer depuis le début du jeu de résultats :

SELECT * FROM tbl LIMIT 5;     # Retrieve first 5 rows

En d'autres termes, LIMIT row_count équivaut à LIMIT 0, row_count.