Comprendre l'utilisation de LIMIT et OFFSET dans SQLite
Cet article explique la différence entre LIMIT et OFFSET dans les requêtes SQLite.
Question :
Veuillez différencier les deux requêtes SQLite suivantes :
<code class="language-sql">SELECT * FROM Animals LIMIT 100 OFFSET 50</code>
et
<code class="language-sql">SELECT * FROM Animals LIMIT 100, 50</code>
Réponse :
Les deux syntaxes sont équivalentes, sauf que l'ordre des nombres est inversé :
LIMIT <跳过>, <数量>
équivaut à LIMIT <数量> OFFSET <跳过>
SQLite prend en charge les deux syntaxes, mais il est recommandé d'utiliser cette dernière pour éviter toute confusion. Ceci est similaire à la syntaxe utilisée dans MySQL et PostgreSQL, bien que MySQL prenne également en charge les deux formes.
Sachez que l'utilisation de ORDER BY
sans spécifier LIMIT
peut conduire à des résultats inattendus. L'ordre des lignes renvoyées sera déterminé par le stockage physique, qui peut ne pas être cohérent avec la disposition attendue. Pour garantir une commande prévisible, il est recommandé d'utiliser ORDER BY
explicitement.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!