当我在VBA MS Access命令中执行DoCmd.RunSQL
SQL时,此更新不起作用:
UPDATE T SET T.Quantità = T.Quantità - C.SommaDiQuantità
FROM [Scorta a magazzino] AS T INNER JOIN (SELECT [Pazienti-Medicinali].[ID Medicinale], Sum([Pazienti-Medicinali].Quantità) AS SommaDiQuantità
FROM [Pazienti-Medicinali] GROUP BY [Pazienti-Medicinali].[ID Medicinale] ) AS C
ON T.[ID Medicinale] = C.[ID Medicinale]
有人可以帮助我吗?
答案 0 :(得分:0)
Access不允许您对分组数据执行更新。
通常你必须将其分为两步,首先将总和值加载到表中,然后链接到该表并执行更新。
如果你真的想要一个解决方法我认为你可以这样做:
UPDATE [Scorta a magazzino] AS T
SET T.Quantità = T.Quantità - Nz(DSUM("Quantità", "[Pazienti-Medicinali]", "[ID Medicinale] = " & T.[ID Medicinale]), 0)