Ако приемем, че time
е времето, когато записът е бил вмъкнат, това ще ви даде последните 10 реда от таблицата:
SELECT * FROM `table` WHERE `amount` > `amount2` AND `code` = '$code'
ORDER BY `time` DESC LIMIT 10
Сега можете да използвате резултата като временна таблица, да я сортирате на случаен принцип (тъй като е само 10 реда) и да върнете един ред:
SELECT * FROM (
SELECT * FROM `table` WHERE `amount` > `amount2` AND `code` = '$code'
ORDER BY `time` DESC LIMIT 10
) AS temptable
ORDER BY RAND()
LIMIT 1