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

Est-ce que LIMIT OFFSET,LENGTH nécessite ORDER BY pour la pagination ?

Comme à peu près tous les autres moteurs SQL, les tables MySQL MyISAM ne garantissent absolument pas l'ordre dans lequel les lignes sont renvoyées, sauf si vous spécifiez une clause ORDER BY. Généralement, l'ordre dans lequel ils sont renvoyés sera l'ordre dans lequel ils ont été lus dans le système de fichiers, qui peut changer d'une requête à l'autre en fonction des mises à jour, des suppressions et même de l'état des sélections en cache.

Si vous voulez éviter que la même ligne ne soit renvoyée plus d'une fois, vous devez trier par quelque chose, la clé primaire étant le candidat le plus évident.