sql >> データベース >  >> RDS >> Mysql

MySqlは最後の10行をランダム化します

    その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
    


    1. 不明なMySQLサーバーホスト

    2. データベース内の1対1の関係とは何ですか?

    3. C#でMysqlDBに接続する-データセットでいくつか必要

    4. Mysqlストアドプロシージャのループ内のステートメントを選択します