我想从结果集中随机获得50%.我try 过的很接近:
SELECT * FROM Customers
WHERE RAND() < 0.5;
但这给了我少于或多于50%的结果集.换句话说,这并不稳定.
第二次try 如下:
SELECT * FROM Customers
ORDER BY RAND()
LIMIT (SELECT COUNT(*) / 2 FROM Customers);
但我有一个错误:您的SQL语法中有错误;请判断与您的SQL服务器版本对应的手册,了解第3行"(SELECT RST(*)/ 2 FROM Customers)"附近使用的正确语法.
您可以在这里测试:https://www.w3schools.com/MySQL/trymysql.asp?filename=trysql_select_all
预期结果应该是将顺序随机化,然后 Select 结果集的50%.