2013-07-14 4 views
3

Я пытаюсь выполнить UPDATE РЕГИСТРИРУЙТЕСЬ запрос в MySQLрегистрация в MySQL с условием UPDATE для нескольких строк

мне нужно сделать следующее: Добавьте table_1.won к table_2.total_winnings для данной сессии

+++ Table_1 +++ 

--id-- --name-- --selection-- -potential_winnings-- -- won -- --session-- 
    1  John   a    67     0   1 
    2  Jame   b    10     **10**  1 
    3  David   c    43     0   1 
    4  Sam   b    20     **20**  1 
    5  Alex   b    30     **30**  1 
    6  Rob   b    1000     0   2 


+++ Table_2 +++ (BEFORE) 

--id-- --Total_winnings-- -- session -- 
    1    4534    1 
    2    885    1 
    3    0     1 
    4    5     1 
    5    10     1 
    6    5465    2 

Мой требуемый выход ниже

ввода: победа выбора = Ь сессия = 1

+++ Table_2 +++ (AFTER) 

--id-- --Total_winnings-- -- session -- 
    1    4534    1 
    2    **895**   1 
    3    0     1 
    4    **25**    1 
    5    **40**    1 
    6    5465    2 

Я могу сделать это, выбрав каждого пользователя из таблицы_1, который выиграл и зациклил туда запись в таблице_2, но у меня есть большое количество элементов для обработки сейчас, поэтому я думаю, что мне нужно присоединиться к somesort для этого.

Я в настоящее время делает

UPDATE table_2 SET Total_winnings = Total_winnings + 10 WHERE id = 2 AND session = 1 

Если кто-нибудь знает, как это сделать, или имеет простой пример SQL присоединиться с и UPDATE запрос, который будет наиболее полезным. Я видел другие примеры этого, но я никогда не могу понять, что происходит в SQL!

ответ

4

Вы ищете что-то вроде этого?

UPDATE table_2 
join table_1 on table_1.id = table_2.id 
SET Total_winnings = Total_winnings + won 
WHERE session = 1 and selection = 'b' 
Смежные вопросы