sql >> Database teknologi >  >> RDS >> Mysql

Mysql Vælg nogle tilfældige rækker og plus en specifik række

SELECT *
FROM `choises`
WHERE questionid = :qid
ORDER BY correct DESC, RAND()
LIMIT 5

Forudsat correct er en slags int. Ellers skal du muligvis ændre DESC til ASC .

Du kan 'blande' de 5 resultater ved at bruge et mere ORDER BY RAND() sådan her:

SELECT * FROM (
    SELECT *
    FROM `choises`
    WHERE questionid = :qid
    ORDER BY correct DESC, RAND()
    LIMIT 5
) as t
ORDER BY RAND()



  1. Udfør et stort SQL-script (med GO-kommandoer)

  2. MySQL 'OPDATERING PÅ DUBLIKAT NØGLE' uden en unik kolonne?

  3. Vis SQLite-forespørgselsresultater ved hjælp af lodret output

  4. Returnerer en klat med json