I got quite a big sql query, which needs to select random rows, but because table is large, order by rand() is taking really long.
            $getdata = $this->db->query("
            SELECT DISTINCT property.id,property.unid,property.imported,property.userid,
            CONCAT(user.firstname) as username,property.url,
            IFNULL(user.thumbpic,'temp/misc/noimage.png') as profilepic,
            property.bedrooms,property.beds,type.meta_val as type,property.accommodates,property.price,
            IFNULL((select thumbimg from tblpropertyimages where pid=property.id limit 1),'temp/misc/noimage.png') as image,
            property.name as propertyname,(select sum(rating) from tblreviews where pid=property.id) as totalrating,
            (select count(id) from tblreviews where pid=property.id) as countratings,
            location.name as cityname from tblproperty as property join tbluser as user on property.userid=user.id 
            join tblcommon as type on property.type=type.id 
            left join tblpropertyamenities as p_amenities on property.id=p_amenities.pid 
            join tbllocation as location on location.id=property.city 
            WHERE property.status='Active' and user.status='Active' 
            $home $q limit $limit offset $start");
What is the best solution for selecting random rows, for this specific query?
 
    