我试图通过计算来自另一个表T2的SQL查询的结果来更新表T1。
这是我提出的查询,但它似乎不起作用:
UPDATE T1 set Stock = (select count (ID_Item)
FROM T2, T1
WHERE T2.ID_Product=T1.ParentSKU AND
T2.Name='' AND
T2.Returned=''
即使我不知道结果,我的结果也是0。 任何帮助都会很棒。
答案 0 :(得分:1)
正确的语法是:
UPDATE T1
SET Stock = (SELECT count(ID_Item)
FROM T2
WHERE T2.ID_Product = T1.ParentSKU AND
T2.Name = '' AND
T2.Returned = ''
);
您不应在相关子查询中重复对T1
的引用。您需要在子查询和正在更新的表之间建立连接。