我正在尝试更新 Oracle 表中的一Goals列,以便每个Game接收来自 Player 表中的平均进球数的列,goal_scored但我不断收到以下错误消息:
“错误:ORA-01427:单行子查询返回多行”
我已经测试了查询,它返回的行数和Games正确的结果一样多。
这是我的代码:
UPDATE GEN
SET Goals = (Select AVG(goal_scored) FROM Player, Gen, Game
WHERE Game.Name=Gen.Gameid AND Player.Gameid=Game.Name
GROUP BY Player.Gamename);
如果我跳过GROUP BY我没有得到错误,但所有Games 得到相同的平均分数。