UPDATE Recipes RE, (
SELECT SUM((((i.iCaseCost/i.iCaseQty)/i.iUnitSize)/i.iUnitSoldBy)*ri.riQty*ri.riMeasureBy) AS 'RecipeCost'
FROM Recipes r INNER JOIN RecipeIngredients ri
ON r.rID = ri.rID JOIN Ingredients i
ON ri.iID = i.iID
WHERE ri.rID = RE.rID
) t
SET RE.rYieldCost = t.RecipeCost
执行时,我收到以下错误:“where子句中的未知列'RE.rID'”。
有什么想法吗?
答案 0 :(得分:1)
您的内部派生查询对外部查询中的列一无所知。尝试使用类似WHERE t.rID = RE.rID
的内容将WHERE移动到UPDATE子句中。