网络托管公司在周末更改了我的Php Myadmin版本,我用了一年更新代码来更新Mysql中的库存不再有效。
原始代码
update uc_product_stock x set x.stock = (select y.stock from import y where trim(x.SKU) = trim(y.SKU))
现在它会带来以下错误
#1242 - Subquery returns more than 1 row
提前感谢您提供任何帮助。
答案 0 :(得分:2)
UPDATE x
SET x.stock = y.stock
FROM uc_product_stock x
INNER JOIN import y
ON TRIM(x.SKU) = TRIM(y.SKU))
答案 1 :(得分:2)
您的子查询返回多个值,而SQL不知道您要将哪一个分配给您的行。
您必须让子查询返回单个值。
选项包括:
WHERE
过滤器,JOIN
等)TOP
子句仅返回一行 - SELECT TOP 1....