Mysql 通过计算另一个表的结果来更新表
我试图通过计算来自另一个表T2的SQL查询的结果来更新表T1 这是我提出的问题,但似乎不起作用:Mysql 通过计算另一个表的结果来更新表,mysql,Mysql,我试图通过计算来自另一个表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的结果,即使我知道它不应该。 任何帮助都很好。正确的语法是: UPDATE T1 SET Stock = (SEL
UPDATE T1 set Stock = (select count (ID_Item)
FROM T2, T1
WHERE T2.ID_Product=T1.ParentSKU AND
T2.Name='' AND
T2.Returned=''
我得到0的结果,即使我知道它不应该。
任何帮助都很好。正确的语法是:
UPDATE T1
SET Stock = (SELECT count(ID_Item)
FROM T2
WHERE T2.ID_Product = T1.ParentSKU AND
T2.Name = '' AND
T2.Returned = ''
);
您不应该在相关子查询中重复对
T1
的引用。您需要在子查询和正在更新的表之间建立连接。谢谢,这非常有效,但我意识到我需要在select count中从另一个表T3添加一个查询。我该怎么做?@PierreS。再问一个问题。不要在评论中提问,也不要在回答问题后更改问题(这可能会使获得否决票的答案无效)。