case文についてはこちら参照
update table1 set need_point=case when disp_id=:disp_id0 then :need_point0 when disp_id=:disp_id1 then :need_point1 end;
これだとcase条件に入らないもののneed_pointはすべてnullで更新されてしまう
こちらの記事を参考にして修正
僕は条件に入らないものはそのままにしておきたかったので以下のように修正
update table1 set need_point=case when disp_id=:disp_id0 then :need_point0 when disp_id=:disp_id1 then :need_point1 else need_point end;
もとのカラム値で更新するようにした
コメント