SQL Serverを使用していると仮定すると、次のようなものが必要だと思います。
WITH toupdate AS
(SELECT team, year,
Sum(personsales) OVER (partition BY team, year) AS newTeamSales
FROM salessummary
)
UPDATE toupdate
SET teamsales = newteamsales;
元のクエリには、いくつかの問題と疑わしい構成があります。まず、集計サブクエリは更新できません。次に、集計を行っており、許可されているものの、ウィンドウ関数を使用するのは珍しいことです。第三に、PersonSales
で集計しています sum()
を取得します 。もう一度、許可されましたが、珍しいです。