您的位置:首页技术文章
文章详情页

mysql - 关联数据表的更新问题

【字号: 日期:2022-06-11 18:58:47浏览:26作者:猪猪

问题描述

UPDATE a,b SET a.v_publishyear = b.v_publishyear WHERE a.v_id = b.v_e

我想更新a表中的数据,实际应该有9000多条数据,而实际上只能更新120条数据。这是怎么回事。把b表中publishyear字段更新到对应的a表publishyear字段中.

但是当我进行操作

SELECT * FROM a表,b表 where a表.c字段 = b表.d字段这个查询的时候,可以查询到全部的9000多条数据,这是怎么回事我更新数据代码哪里出错了呢?

问题解答

回答1:

UPDATE不太适合用WHERE去关联两表。所以试试这种写法:

UPDATE a LEFT JOIN b ON a.v_id = b.v_e SET a.v_publishyear = b.v_publishyear回答2:

update tableA a set a.v_publishyeaar=(select b.v_publishyear from tableB b where b.v_e=a.v_id)

相关文章: