Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Обновить таблицу на основе другой таблицы MySql

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Обновить таблицу на основе другой таблицы MySql
noobphp
Отправлено: 28 Января, 2016 - 20:06:53
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Янв. 2011  


Помог: 0 раз(а)




Приветствую Вас форумчане, нуждаюсь в вашей помощи.
Нужно обновить данные таблицы на основе другой таблицы, постараюсь объяснить.
Первая таблица: bonus с полями: id, time, temp, login, label и т.д.
Вторая таблица: users с полями: id, time, ip, login, status и т.д.

Нужно из первой таблицы выбрать записи из поля login, где label=0 и обновить во второй таблице поле status, равный 0 на 1, где login из первой и второй таблицы совпадают.

Выбираю записи из первой таблицы так:
PHP:
скопировать код в буфер обмена
  1. $row=mysql_query("SELECT login FROM bonus WHERE label='1'");

Что дальше делать не знаю, пробовал как то так:
PHP:
скопировать код в буфер обмена
  1. mysql_query("UPDATE users SET status='1' WHERE login='$row[login]'");

Пример:
Таблица 1
CODE (htmlphp):
скопировать код в буфер обмена
  1. 1|time|temp|vasya|0
  2. 2|time|temp|petya|20
  3. 3|time|temp|fedya|1
  4. 4|time|temp|dima|2
  5. 5|time|temp|serega|0


Таблица 2
CODE (htmlphp):
скопировать код в буфер обмена
  1. 31|time|ip|vasya|0
  2. 32|time|ip|petya|0
  3. 33|time|ip|fedya|0
  4. 34|time|ip|dima|0
  5. 35|time|ip|serega|0


Нужно чтобы во второй таблице у vasya и serega, вместо 0 стояла цифра 1
Сам с трудом понимаю то, что тут понаписал, не получается точнее сформулировать.
 
 Top
Faraon-san
Отправлено: 29 Января, 2016 - 10:21:47
Post Id



Посетитель


Покинул форум
Сообщений всего: 318
Дата рег-ции: Сент. 2013  


Помог: 8 раз(а)




это?
CODE (SQL):
скопировать код в буфер обмена
  1. UPDATE `users` SET `status` = '1' WHERE `login` IN (SELECT `login` FROM `bonus` WHERE `label` = '1')
 
 Top
noobphp
Отправлено: 29 Января, 2016 - 13:19:49
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Янв. 2011  


Помог: 0 раз(а)




Спасибо Вам огромное, это именно то, что нужно.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB