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

MySql randomizza le ultime 10 righe

Supponendo che time è l'ora in cui è stato inserito il record, questo ti darà le ultime 10 righe dalla tabella:

SELECT * FROM `table` WHERE `amount` > `amount2` AND `code` = '$code'
  ORDER BY `time` DESC LIMIT 10

Ora puoi utilizzare il risultato come tabella temporanea, ordinarlo in modo casuale (dato che sono solo 10 righe) e restituire una riga:

SELECT * FROM (
  SELECT * FROM `table` WHERE `amount` > `amount2` AND `code` = '$code'
    ORDER BY `time` DESC LIMIT 10
) AS temptable 
ORDER BY RAND()
LIMIT 1