Dengan asumsi Anda menggunakan SQL Server, saya pikir Anda menginginkan sesuatu seperti ini:
WITH toupdate AS
(SELECT team, year,
Sum(personsales) OVER (partition BY team, year) AS newTeamSales
FROM salessummary
)
UPDATE toupdate
SET teamsales = newteamsales;
Kueri asli Anda memiliki beberapa masalah dan konstruksi yang mencurigakan. Pertama, subkueri agregasi tidak dapat diperbarui. Kedua, Anda melakukan agregasi dan menggunakan fungsi jendela dengan, meskipun diizinkan, tidak biasa. Ketiga, Anda menggabungkan berdasarkan PersonSales
dan mengambil sum()
. Sekali lagi, diperbolehkan, tapi tidak biasa.