我知道这个问题已经被问过,但没有解决我的问题,我正在使用phpmyadmin服务器版本的localhost:10.1.21-MariaDB,我想使用查询从大表中选择n个随机行....
SELECT * FROM db.table TABLESAMPLE(10 PERCENT)
但我收到错误声明........ "#1064 - 您的SQL语法出错;检查与您的MariaDB服务器版本对应的手册,以获得正确的语法,以便使用“(10%)限制0,25'在第1行" 拜托,这已经让我迷上了3天,感谢您的协助
答案 0 :(得分:1)
我不认为MariaDB / MySQL支持tablesample
。
您可以使用rand()
获得10%的样本:
select t.*
from db.table t
where rand() < 0.1;
这不是完全相同,因为行数可能不完全是10%。但是,在大多数情况下,它应该足够接近。
答案 1 :(得分:0)
使用以下查询:
选择* FROM db.table_name ORDER BY rand();