有两个相同的结构化表,即一个&二。我想用另一个表的相同列的值更新一列。 看一看这样的:使用另一个表中另一列的值更新行
表一
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.name
与two.name
值。我怎么做?
有两个相同的结构化表,即一个&二。我想用另一个表的相同列的值更新一列。 看一看这样的:使用另一个表中另一列的值更新行
表一
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.name
与two.name
值。我怎么做?
在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
是的,我得到了这一点,但我不能用这个查询限制。除非我在几行上进行测试,否则我无法继续并更新整个表格。有什么办法可以限制吗? – 2015-01-20 18:46:28
@ShanilSoni它不是很好地改变飞行中的要求。 – Mihai 2015-01-20 18:48:07
对不起,要求是更新整个表格,只是想测试几行。要求保持不变 – 2015-01-20 18:49:35
见http://stackoverflow.com/questions/1262786/mysql-update-query-based-on-选择查询 – SolarBear 2015-01-20 18:41:06