我想替换我的数据库news表product中的标签行,其中product名称等于另一个表product中的product名称。
我想将tags列从products数据库复制到product数据库tags必须在正确的行中,就像name列必须与两个表都匹配一样。
我尝试了一个查询,但它给我一个错误:
Table to copy = product
Table from copy products
Condition (name=name) or (slug=slug)
在两个表中:
UPDATE product
set tags = (
select tags
FROM products
where product.name = products.name
);
它给出一个错误:
Subquery returns more than 1 row
它适用于:
UPDATE product
set tags = (
select tags
FROM products
where product.id = products.id
);
1条答案
按热度按时间f2uvfpb91#
我发现什么可以更好地理解并确保你最终想要在最终更新,但也要确保你得到的记录打算。
一旦你确认了这一点,只需将SELECT更改为UPDATE。你可以使用正在更新的表的“别名”。我发现最好确保你的查询是正确的,看看什么记录将被查询,什么之前和你想要更新的值应该是。一旦好了,然后应用更新。