我正在尝试更新 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
我没有得到错误,但所有Game
s 得到相同的平均分数。