здравствуйте, почему скрипт при выборке думает около полу минуты в первом случае, во втором случае отвечает мгновенно, но нужную выборку по дате не могу поставить, как только добавляю
$order_by_str="order by date_added desc";
$order_way='';
начинает думать при открытии страницы
вот первый вариант который думает долго
function getLatest($no_latest, $where = '') {
global $db, $settings;
$locations_str="";
if($settings['enable_locations'])
$locations_str = locations::makeQueryStr();
$where="where ".TABLE_ADS.".active = 1".$where.$locations_str;
$order_by_str="order by date_added desc";
$order_way='';
$start=0;
$ads_per_page=$no_latest;
$result=$this->getShortListings($where,$order_by_str,$order_way,$start,$ads_per_page);
return $result;
}
а вот этот открывает моментально, но не понятно по какому выбору
function getLatest($no_latest, $where = '') {
global $db, $settings;
$locations_str="";
if($settings['enable_locations'])
$locations_str = locations::makeQueryStr();
$where="where ".TABLE_ADS.".active = 1".$where.$locations_str;
// solution to avoid order by rand()
$total_latest = $db->fetchRow("select count(*) from ".TABLE_ADS." ".$where);
if($total_latest<=$no_latest) {
$result=$this->getShortListings($where,"","",0,0);
//shuffle ( $result );
//return $result;
}
// more than $no_featured results
//$t = $total_latest - $no_latest;
$start = 0;
$result=$this->getShortListings($where,"","",$start,$no_latest);
return $result;
}
подскажите пожалуйста как сделать выборку по дате как в первом случае, но чтобы открывалось также быстро как во втором, количество записей берется и в первом случае и во втором одинаковое, в чем проблема не понятно..