2015-01-20 194 views
0

有兩個相同的結構化表,即一個&二。我想用另一個表的相同列的值更新一列。 看一看這樣的:使用另一個表中另一列的值更新行

表一

id name value 
1 a  11 
2 b  12 
3 c  13 

表二

id name value 
1 c  11 
2 d  12 
3 e  13 

我想更新one.nametwo.name值。我怎麼做?

+0

見http://stackoverflow.com/questions/1262786/mysql-update-query-based-on-選擇查詢 – SolarBear 2015-01-20 18:41:06

回答

1

UPDATE中使用JOIN來關聯這兩個表。

UPDATE One 
JOIN Two ON One.value = Two.value 
SET One.name = Two.name 

如果你需要使用LIMIT,你必須使用一個子查詢:

UPDATE One 
JOIN (SELECT * 
     FROM Two 
     LIMIT 100) AS Two 
ON One.value = Two.value 
SET One.name = Two.name 
+0

是的,我得到了這一點,但我不能用這個查詢限制。除非我在幾行上進行測試,否則我無法繼續並更新整個表格。有什麼辦法可以限制嗎? – 2015-01-20 18:46:28

+0

@ShanilSoni它不是很好地改變飛行中的要求。 – Mihai 2015-01-20 18:48:07

+0

對不起,要求是更新整個表格,只是想測試幾行。要求保持不變 – 2015-01-20 18:49:35

相關問題