MYSQL随机行/订购问题

时间:2010-12-06 23:46:53

标签: sql mysql random

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

SELECT * FROM myTable ORDER BY myscore DESC LIMIT 3;

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

谢谢!

1 个答案:

答案 0 :(得分:4)

SELECT * FROM
(
SELECT * FROM myTable ORDER BY myscore DESC LIMIT 3
) Top3
ORDER BY RAND() LIMIT 1;