【发布时间】:2014-03-13 02:38:32
【问题描述】:
在 postrgres 系统中,我创建了一个临时表,其中包含另一个表的外键值。我希望根据我要更新的表中的外键值,使用该临时表中的信息更新另一个表。
我的想法是使用更新查询,例如:
update playerdata set "slotID"=temp1."gameID" from temp1 where playerdata."PlayerID"=playerdata."PlayerID";
但是,当我进行此更新时,我会为表中的每个 slotID 获得相同的 gameID,而根据 playerID,它们应该是不同的。
例如,如果临时成立:
playerid gameID
1 10
2 11
玩家数据表更新的结果是:
playerid slotID
1 10
2 10
我希望结果是:
playerid slotID
1 10
2 11
我还使用了临时表的连接语句,它按预期工作,游戏 ID 与其对应的玩家 ID。
select w."PlayerID", t."gameID" from playerdata as w, temp1 as t where t."PlayerID" = w."PlayerID";
有没有办法根据相应的临时 playerID 和 gameID 更新玩家数据表的 slotid?
【问题讨论】:
标签: sql postgresql sql-update temp