SQLFiddle演示
select ID,NAME,REPORT_IDfrom(select *, @row:=if(name=@name,@row,0)+1 as rn, @name:=name from (select *,RAND() as trand from t) t1,(select @row:=0,@name:='') tm2 order by name,trand) t2where rn<=10

SQLFiddle演示
select ID,NAME,REPORT_IDfrom(select *, @row:=if(name=@name,@row,0)+1 as rn, @name:=name from (select *,RAND() as trand from t) t1,(select @row:=0,@name:='') tm2 order by name,trand) t2where rn<=10