从另一个表postgresql更新表

时间:2014-06-27 07:20:31

标签: sql postgresql

我有2张桌子。 Table A包含3列:Month,Code,Pointtable B包含5列:Code,Point1,Point2,Point3,Point4

我想根据表A的月份更新表B中的点(仅4个月分配到1-4点)。

1 个答案:

答案 0 :(得分:0)

我假设TableA(Code)是TableB(Code)的外键,TableA(Month,Code)是唯一的。我也从你的解释中得出那个月只能是1,2,3或4。

UPDATE tableB b SET
     point1 =
     (SELECT Point FROM TableA
      WHERE Month = 1
      AND Code = b.Code),
     point2 =
     (SELECT Point FROM TableA
      WHERE Month = 2
      AND Code = b.Code),
     (...)