Maison >base de données >tutoriel mysql >Clause SQLite LIMIT : OFFSET ou OFFSET et ROW COUNT ?
Quelle clause LIMIT est syntaxiquement correcte dans SQLite : OFFSET ou OFFSET et ROW COUNT ?
SQLite fournit deux syntaxes pour limiter et décaler les résultats des requêtes :
<code>LIMIT <跳过>, <数量></code>
et
<code>LIMIT <数量> OFFSET <跳过></code>
La différence entre ces deux formes grammaticales peut prêter à confusion car leurs numéros sont dans l'ordre inverse.
La première forme grammaticale <code>LIMIT <跳过>, <数量></code> est équivalente à :
<code>LIMIT <数量> OFFSET <跳过></code>
Sa syntaxe est compatible avec MySQL et PostgreSQL. MySQL prend en charge les deux formes de syntaxe, tandis que PostgreSQL ne prend en charge que la seconde syntaxe. SQLite prend en charge les deux formes de syntaxe, mais il est recommandé d'utiliser la seconde syntaxe pour éviter toute confusion.
Par exemple, la requête suivante ignorera les 50 premières lignes et renverra les 100 lignes suivantes :
<code>SELECT * FROM Animals LIMIT 100 OFFSET 50</code>
Il est important de noter qu'utiliser ORDER BY
sans utiliser LIMIT
au préalable ne donne pas toujours les résultats escomptés. SQLite renverra les lignes dans un certain ordre, qui peut être déterminé par l'endroit où elles sont physiquement stockées dans le fichier. Cependant, il n’est pas garanti que cet ordre soit significatif ou cohérent. La seule façon d'obtenir un ordre prévisible est 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!