Друзья, подскажите, пожалуйста, как оптимизировать следующие запросы? Есть ли какие-то конструкции, чтобы не делать запросы в цикле?
Таких запросов в скрипте 4..
$na=1;
$db->query( "SELECT id, rat, ratkol FROM products Where status != 2 ORDER BY rat DESC" );
while ( $tt = $db->get_row() ) {
mysql_query("INSERT INTO dynamika (idprod, date, place, points, kolgol,act) values ('".$tt['id']."', '".$today."', '".$na++."', '".$row['rat']."', '".$row['ratkol']."', '0')");
}
В выше написанном запросе идет вставка данных продукта(место в рейтинге, количество голосов) в таблицу "динамики". С помощью таблицы динамики показывается динамика продукта (место в рейтинге, сколько голосов и т.п.)
В следующем запросе идет вставка в таблицу продукта Чтобы вывести место в рейтинге, которое продукт занимал неделю назад..
$gg = $db->query( "SELECT idprod, place FROM dle_dynamika Where date <= '$today' - INTERVAL 7 DAY AND act = '0'" );
while ( $row = $db->get_row($gg) ) {
$db->query("UPDATE dle_products SET topd='$row[place]' WHERE id = '" . intval($row[idprod]) . "'");
}
Буду очень благодарен за любые подсказки..