Je crée un serveur de score élevé et l'une des fonctionnalités nécessaires est de pouvoir récupérer des scores élevés autour du score actuel des utilisateurs. J'ai actuellement les suivantes:Offset de limite négative dans mysql
SELECT * FROM highscores
WHERE score >= (SELECT score FROM highscores WHERE userID = someID)
ORDER BY score, updated ASC
LIMIT -9, 19
Le seul problème ici est que le paramètre de décalage de LIMIT ne peut pas être négatif, sinon je crois que cela fonctionnerait dandy. Donc, en conclusion, y a-t-il une astuce ou un moyen de compenser négativement le décalage LIMIT, ou y a-t-il un meilleur moyen d'y parvenir entièrement?
Vous ne savez pas pourquoi vous devez utiliser un décalage négatif, pouvez-vous simplement passer de la commande ASC à DESC? – ajreal
Ensuite, j'ai le même problème mais à l'autre bout. Disons que le joueur est classé 345 sur le tableau des leaders, le classement est implicite du score ORDER BY, mis à jour (en donnant la priorité aux scores les plus anciens). Nous avons ensuite besoin de récupérer les lignes 345-9 - 345 + 9, je n'arrive pas à trouver un moyen d'y parvenir par la clause LIMIT, car maintenant, peu importe comment je trier, je semble avoir besoin d'un décalage négatif. – Ylisar