Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> UPDATE optimization, Help 
V
    Опции темы
anka
  Дата 6.3.2008, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 18.9.2006
Где: Azerbaijan

Репутация: нет
Всего: нет



Привет всем....
 у меныа вот такаыа проблема.....


Код

$db=mysql_query("SELECT field FROM table where field!=0");
while ($result=mysql_fetch_array($db))
{

$update =mysql_query("UPDATE table1 SET field1='lalalala' WHERE table1.field1='".$result['field']."'");

}


у мена там записеы болше 10000.... и он тормозит smile

потом хотел оптимизироват..... как внизу

Код

$UPDATE=mysql_query("UPDATE table1 SET field1='lalalala' WHERE table1.field1 in (select field from table where field!=0)");



Но не работает.....


PM MAIL WWW ICQ   Вверх
Feldmarschall
Дата 6.3.2008, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



Опишите задачу полностью.
С реальными, а не примерными таблицами.

Для одноразовой задачи скорость выполнения не проблема.
Если же это делается при штатной работе сайта, то надо все переделывать


PM   Вверх
anka
Дата 6.3.2008, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 18.9.2006
Где: Azerbaijan

Репутация: нет
Всего: нет



Все уэ решил



Код

--------------------------------
mysql_query("UPDATE table1,(select field from table where field!=0) as tab SET field1='lalalala' WHERE table1.field1=tab.field");
--------------------------------




 smile 

Это сообщение отредактировал(а) anka - 6.3.2008, 17:00
PM MAIL WWW ICQ   Вверх
bars80080
Дата 6.3.2008, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



может так:

Код

$db=mysql_query("SELECT field FROM table where field!=0");
$sql = '';
while($result=mysql_fetch_array($db)) { $sql .= ' or field1="'.$result['field'].'"'; }

if(strlen($sql) > 0) {
$sql = substr($sql, 3);
$update = mysql_query('UPDATE table1 SET field1="lalalala" WHERE '.$sql); }




Это сообщение отредактировал(а) bars80080 - 6.3.2008, 17:02
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0457 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.