そのtime
を想定 レコードが挿入された時刻です。これにより、テーブルから最新の10行が取得されます。
SELECT * FROM `table` WHERE `amount` > `amount2` AND `code` = '$code'
ORDER BY `time` DESC LIMIT 10
これで、結果を一時テーブルとして使用し、ランダムに並べ替えて(10行しかないため)、1行を返すことができます。
SELECT * FROM (
SELECT * FROM `table` WHERE `amount` > `amount2` AND `code` = '$code'
ORDER BY `time` DESC LIMIT 10
) AS temptable
ORDER BY RAND()
LIMIT 1