Я написал следующий триггер:Update Trigger, влияющие слишком много строк
begin
update NFL.TeamStatistics
set Passing_Yards = (select sum(Quarterbacks.Yards)
from NFL.Quarterbacks
where Quarterbacks.Team = inserted.Team)
from NFL.Quarterbacks
inner join inserted on Quarterbacks.Team = inserted.Team;
Всякий раз, когда кто-то обновляет проходящие ярдов в таблице о квотербэков, он должен автоматически установить NFL.TeamStatistics.Passing_Yards
на сумму мимолетных ярдов каждой команды.
Я использовал следующую инструкцию, чтобы проверить:
update NFL.Quarterbacks
set Quarterbacks.Yards = 4000
where Team = 'PIT';
Однако в таблице NFL.TeamStatistics
она установила passingyards
для всех команд 4000, а не только для PIT
. В чем дело?
нет where для оператора обновления, ему будет обновлена таблица NFL.TeamStatistics – bjhaid
FYI, это триггер после обновления. – user3109653
Я считаю, что я ставлю предложение where после суммы (Quarterbacks.Yards). Должен ли я разместить его в другом месте? – user3109653