随机取记录可能没有理想的方法,如果在应用程序中,这样也能基本实现:
1.选出随机数  select ceil(random()*((select count(*) from tabname)-5));
2.比如变量num为上面查询得到的结果,则下面查询得到5条随机记录:
  select * from tablename offset num limit 5;如果在数据库中直接查询,我尝试用 select * from tablename offset ( select ceil(random()*((select count(*) from tablename)-5)) ) limit 5;
不能执行,看来也得象上面那样分两步查询了,如果你知道表中记录总数,不如为为10000,则也可以这样得到5条随机记录:
select * from tablename offset ceil(random()*(10000-5)) limit 5;