Je voudrais construire une requête qui affiche tous les résultats dans un tableau, mais est décalée de 5 à partir du début du tableau. Autant que je sache, le LIMIT
de MySQL nécessite une limite ainsi qu'un décalage. Y a-t-il un moyen de faire cela?
Affreux! Je suis venu ici en espérant que MySQL rende la clause Limit facultative, comme c'est le cas, mais aussi avec un offset fourni... mais non! J'ai vu ce 18446744073709551615 éparpillé dans tout le code et je blâmais des programmeurs paresseux, mais c'est une caractéristique de conception!
2 votes
C'est une question totalement valable, mais je me demande si ce qui serait mieux serait de tout prendre et d'ignorer les premiers enregistrements de manière programmatique. Étant donné l'horreur de ce qui semble être la meilleure réponse (limite 5, 18446744073709551615), je favoriserais fortement le contournement des limitations de MySQL LIMIT.
3 votes
@cesoid que se passe-t-il si vous voulez
limiter 5000, 18446744073709551615
. Vous ne allez pas récupérer 5000 lignes supplémentaires juste pour que votre code ait l'air joli.0 votes
@user3576887 Je pense que vous avez raison, je venais juste de considérer la question ci-dessus en supposant que 5 était la seule exigence, plutôt qu'une quantité variable qui pourrait être beaucoup plus grande (et plutôt que de résoudre le problème de quelqu'un d'autre).
0 votes
Je suggère que cette tâche est si rare que la laideur de la solution peut être acceptée.