第一种
select * from t_user_grade ORDER BY rand() limit 1
ORDER BY rand()语句,这个语句可以实现取任意条数据,但是官网提示数据量大时内存消耗会很大,查询会很慢
第二种(随机生成一个id)
select * from t_user_grade as t1 JOIN (select ROUND(RAND()*(select MAX(id) from t_user_grade)) as id) as t2 where t1.id > t2.id ORDER BY t1.id LIMIT 3
这种情况, 在数据量很小的情况下, 很容易出现不够条数, 甚至1条都没有的情况
如果您还有其它的方法, 请留言回复, 多多讨论, 共同进步