MySQL-选择特定的行,然后随机化它们

MySQL-选择特定的行,然后随机化它们,mysql,Mysql,当我写'SELECT*FROM table ORDER BY RAND()LIMIT 50'mysql必须随机化整个表,然后只取50。 我想做的是(在mysql中,最好不是在php中)获取50行,然后将它们随机化 在Mysql中有这样做的方法吗?您尝试过类似的方法吗 SELECT * FROM ( SELECT * FROM table LIMIT 50 ) sub ORDER BY RAND()

当我写
'SELECT*FROM table ORDER BY RAND()LIMIT 50'
mysql必须随机化整个表,然后只取50。 我想做的是(在mysql中,最好不是在php中)获取50行,然后将它们随机化


在Mysql中有这样做的方法吗?

您尝试过类似的方法吗

SELECT *
FROM    (
            SELECT * 
            FROM table 
            LIMIT 50
        ) sub
ORDER BY RAND() 

不起作用。它说:“每个派生表都必须有自己的别名”哦,我只需要在右括号后为它提供一个别名。