MW211 EXIT

devlog
PostgreSQL/最大値を更新(2)
2013年04月22日
もうちょっと簡単な方法。
これだと、更新するレコードのみを更新できる。
┌──────────────────────────────────────┐
│UPDATE 更新表                                                               │
│  SET 最大 = 入力表.値                                                      │
│  FROM 入力表                                                               │
│  WHERE 入力表.キー = 更新表.キー                                           │
│    AND (入力表.値 > 更新表.最大                                            │
│      OR 更新表.最大 IS NULL)                                               │
└──────────────────────────────────────┘
ちなみに「SET 最大 =」のところを「SET 更新表.最大 =」としてはいけないみたい。

それと、これはPostgreSQL独自の仕様の模様。
分類:PostgreSQL