MS Access SQL:使用另一个表中的Sum更新连接查询

问题描述 投票:0回答:1

我正在尝试使用另一个名为“OrderDetails”的表中的“Quantity”字段来更新名为“Products”的表的“Price”字段。我使用t作为临时表来存储来自OrderDetails的查询结果,然后是INNER加入两个表(p和t)。我仍然收到错误。我验证了查询块(SELECT ...... GROUP BY ProductID)的工作原理。这是抛出错误的UPDATE。有什么想法?

    UPDATE p
    SET Price = t.sumQuan
    FROM Products AS p
    INNER JOIN
    (
        SELECT ProductID, SUM(Quantity) sumQuan
        FROM OrderDetails
        GROUP BY ProductID 
    ) t
    ON t.ProductID = p.ProductID;
sql ms-access
1个回答
1
投票

也许只是Access与其他RDBMS的语法差异?

UPDATE products 
INNER JOIN (SELECT ProductID, SUM(Quantity) sumQuan
            FROM OrderDetails
            GROUP BY ProductID 
           ) t
  ON t.ProductID = p.ProductID;
SET Price = t.sumQuan
© www.soinside.com 2019 - 2024. All rights reserved.