SELECT *
FROM `choises`
WHERE questionid = :qid
ORDER BY correct DESC, RAND()
LIMIT 5
Vorausgesetzt correct
ist eine Art int. Andernfalls müssen Sie möglicherweise DESC
ändern zu ASC
.
Sie können die 5 Ergebnisse mit einem weiteren ORDER BY RAND()
„mischen“. so:
SELECT * FROM (
SELECT *
FROM `choises`
WHERE questionid = :qid
ORDER BY correct DESC, RAND()
LIMIT 5
) as t
ORDER BY RAND()