【问题标题】:MYSQL Random Row/Ordering questionMYSQL 随机行/排序问题
【发布时间】:2011-05-21 07:18:01
【问题描述】:

我正在尝试选择得分最高的三行。显然我可以使用简单的东西,例如:

SELECT * FROM myTable ORDER BY myscore DESC LIMIT 3;

但我还想要一种简单的方法来随机返回这三行中的一个。通常我只是做一个 ORDER BY rand(),但是添加约束的最简洁的方法是什么是它必须是仅来自前 3 个得分行的随机约束?

谢谢!

【问题讨论】:

    标签: sql mysql random


    【解决方案1】:
    SELECT * FROM
    (
    SELECT * FROM myTable ORDER BY myscore DESC LIMIT 3
    ) Top3
    ORDER BY RAND() LIMIT 1;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-26
      • 1970-01-01
      • 2020-08-12
      • 2012-04-02
      • 2010-12-01
      相关资源
      最近更新 更多