2015-04-06 2 views
0

провайдеров:обновления всех полей от выбора из 2-х таблиц

SELECT ID,has_account from service_providers where has_account='yes'; 

+-----+-------------+ 
| ID | has_account | 
+-----+-------------+ 
| 17 | yes   | 
| 687 | yes   | 
| 158 | yes   | 
| 292 | yes   | 
| 306 | yes   | 
| 444 | yes   | 
| 536 | yes   | 
| 572 | yes   | 
| 601 | yes   | 
| 697 | yes   | 
+-----+-------------+ 

счет:

SELECT ID,active from accounts; 

+-----+--------+ 
| ID | active | 
+-----+--------+ 
| 1 | yes | 
| 3 | yes | 
| 4 | yes | 
| 7 | yes | 
| 8 | yes | 
| 9 | yes | 
| 10 | yes | 
| 11 | yes | 
| 12 | yes | 
| 13 | no  | 
| 14 | yes | 
| 15 | yes | 
| 16 | no  | 
+-----+--------+ 

я хочу это в MySQL:

if account == active 
set provider.has_account == 'yes' 

мне нужно установить поле has_account к yes id Аккаунт учетной записи активен.

Ради личной жизни, давайте просто скажем, таблицы связаны ID

ответ

1

Присоединяйтесь к таблицам и установите в поле с UPDATE заявлением:

UPDATE providers AS p 
JOIN accounts AS a ON p.id = a.id 
SET p.has_account = 'yes' 
WHERE a.active = 'yes' 
+0

спасибо, я думаю, что вы ответили именно то, что я ищу. –

+0

благодарит Бармара, я просто использовал ваш совет, и он получил свою работу! woop woop –

Смежные вопросы