Můžete použít LIMIT m,n
omezit počet získaných výsledků a kompenzovat výsledky o danou částku.
Nyní můžete udělat něco jako:
SELECT * FROM questions WHERE QuizID=1 LIMIT $page,5;
Kde vypočítáte $page
na základě $_GET
proměnná. Ale to nevyřeší vaši náhodnost.
Vždy můžete zadat RAND($key) daným klíčem, který si ve své relaci uložíte, abyste mohli ORDER BY RAND($key)
a použijte výše uvedenou limitní techniku.
Pravděpodobně nejjednodušší by bylo získat celou sadu výsledků, zamíchat ji a uložit do mezipaměti. Poté použijte php k zobrazení pouze konkrétní části mezipaměti.
Protože to souvisí se stránkováním. Řeknu vám, LIMIT m,n nemusí být tak rychlý, jak to zní. Zjistěte, jak jej zlepšit a přečtěte si více o Efektivní stránkování pomocí MySQL