如何update一个字段更新多个值?求大神指教

有A,B两张表,想把A表中的ID值改成B表中的BID的值,两表通过A.ID=B.AID关联,但是更新的时候报错,说不能更新多条值,

但A.ID那个字段我就是想弄成多条记录,求大神指教。

update test_a a 
set a.id = (SELECT b.bid FROM test_b b where a.id = b.aid)
where exists(
SELECT 1 FROM test_b b where a.id = b.aid
)

这个更新会报错,因为set a.id后面的子查询里面是有多个值的,我的需求也是要是有多个值就弄多个值,

请教大神如何解决这个需求?

 

换个思路 A和B表关联,插入数据到A表,删除A表旧数据?

触发器

这个是逻辑问题 都没有解决, 一行id 对应多个值。那取第一个id ,最后一个id? 所有id串起来,以逗号隔开?

楼上正解