我不認爲這是可能的,但認爲我會檢查它是否是,並且如果不要求最有效的替代方法。使用INNER JOIN和WHERE更新MySQL中的兩個表
目的: 更新table_1
和table_2
使用一個查詢與Inner Join
和WHERE
目前我有:
UPDATE table_1
JOIN table_2 ON table_1.user_id= table_2.user_id
SET
table_1.value = 9,
table_2.value_fan = 43
WHERE
table_1.user_id = 1 AND table_2.fan_id =1
這準確地根據WHERE
狀態更新table_2
,但所有條目更新於table_1
其中table_1.user_id = 1
...忽略條件table_2.fan_id = 1
編輯 對不起,我本來應該更清晰,我上面有一個錯字,這是目前矯正......下面也是SQLFiddle
http://sqlfiddle.com/#!2/58d7b/1
正如我希望的鏈接你可以看到Table_2_winnings只有一個用戶詹姆斯正確更新,獲得了任何獎金(因爲他有一個city_id = 1和group_id = 1)。但是group_id = 1中的table_1中的所有用戶都已更新。在哪裏我只希望James更新...
這聽起來並不正確。你能否提供一個例子,最好通過[sqlfiddle](http://sqlfiddle.com)的方式? – eggyal
僅當設置了table2列值時,table1中的條目如何更新? –
已經更新,包括SQLFiddle的鏈接..對不起,困惑。 – Jim