从数据表中随机抽取n条数据的几种方法

1、"SELECT * FROM table ORDER BY RAND() LIMIT n";

2、"SELECT *, myrand as RAND() FROM table ORDER BY myrand LIMIT n";

3、"SELECT * FROM table WHERE id >= ((SELECT MAX(id) FROM table)-(SELECT MIN(id) FROM table)) * RAND() + (SELECT MIN(id) FROM table)  LIMIT n";

前两种速度差不多,都比较慢,不推荐使用,最后一种是在最大ID和最小ID中随机抽取,速度非常快。

你可能感兴趣的:(MYSQL)