使用SUMs+;MySQL中联接中的现有值?
我试图使用现有值加上另一个表中的值之和来更新一个表中的销售总额。以下是我使用的查询的简化版本:使用SUMs+;MySQL中联接中的现有值?,mysql,join,aggregate-functions,Mysql,Join,Aggregate Functions,我试图使用现有值加上另一个表中的值之和来更新一个表中的销售总额。以下是我使用的查询的简化版本: UPDATE sales_summary INNER JOIN sales ON sales_summary.StoreID = sales.StoreID SET sales_summary.total = (sales_summary.total + SUM(sales.amount)) WHERE PurchaseDate BETWEEN '2011-01-01' AND '2011-01
UPDATE sales_summary
INNER JOIN sales ON sales_summary.StoreID = sales.StoreID
SET sales_summary.total = (sales_summary.total + SUM(sales.amount))
WHERE PurchaseDate BETWEEN '2011-01-01' AND '2011-01-31'
GROUP BY sales_summary.StoreID
我可以在更新中不使用聚合函数吗?您得到的错误是什么?您得到的错误是什么??
UPDATE sales_summary
INNER JOIN
(SELECT StoreID, SUM(amount) as amount
FROM sales
GROUP BY StoreID) as sales
ON sales_summary.StoreID = sales.StoreID
SET sales_summary.total = sales_summary.total + sales.amount
WHERE PurchaseDate BETWEEN '2011-01-01' AND '2011-01-31'