Уже заколебался с ним мозги не варят не хрена...(((
Как в клик клубе можно оптимизировать вот этот код может кто знает?
Или что посоветует?
$qq=mysql_query("SELECT `id` FROM `".prefix."users` WHERE `cfrom`>`cto`;");
if(($all=mysql_num_rows($qq))>0)
{
while($field=mysql_fetch_array($qq))
{
mysql_unbuffered_query("update `".prefix."url` set `activ`='0' where `activ` = '1' && `moder` = '0' and `id_user` = '".$field['id']."';");
}
}
$qq=mysql_query("SELECT * FROM `".prefix."users` WHERE `cfrom`<=`cto`");
if(($all=mysql_num_rows($qq))>0)
{
while($field=mysql_fetch_array($qq))
{
mysql_unbuffered_query("update `".prefix."url` set `activ`='1' where `activ` = '0' && `moder` = '0' and `id_user` = '".$field['id']."';");
}
}
mysql_query("OPTIMIZE TABLE `".prefix."url`, `".prefix."users`;");
Если тебе тяжело нести яблоко в кармане, это не значит, что яблоко тяжёлое, а возможно ты слабый
08 Янв 2012, 16:42megavolt, суть кода подробнее объясни
добавлено спустя 3 минуты:
YetiRider, 2*2 
$qq=mysql_query("SELECT `id` FROM `".prefix."users` WHERE `cfrom`>`cto`;");
if(($all=mysql_num_rows($qq))>0)
{
while($field=mysql_fetch_array($qq))
{
mysql_unbuffered_query("update `".prefix."url` set `activ`='0' where `activ` = '1' && `moder` = '0' and `id_user` = '".$field['id']."';");
}
}
Ищет пользователей у кого нет кредиты в активе, патом ищет активные площадки пользователей и делает их не активными.
Что то типа этого! Второй кода аналогичен только наоборот работает!
не знаю как насчет легкости не тестировал, но логика подсказывает что один запрос должен быть легче чем запрос в цикле.
тогда можно попробовать как то так:
UPDATE `".prefix."url` AS `t1`, `".prefix."users` AS `t2` SET `t1`.`activ` = '1' WHERE `t1`.`activ` = '0' AND `t1`.`moder` = '0' AND `t1`.`id_user` = `t2`.`id` AND `t2`.`cfrom` <= `t2`.`cto`;