mysql使用CASE WHEN语句更新数据的失误

update a set colume1 case when colume1 = 'abc'  then 'bcd' end where colume2 = 'ddd'

 

 这样除了第一条被更新为bcd之外,其他两条都会更新成空值

 

 正确写法应该要加上else

update a set colume1 case when colume1 = 'abc'  then 'bcd' else colume1 end where colume2 = 'ddd'

多case when then else end

update a set colume1 case when colume1 = 'abc'  then 'bcd' end , case when colume2 = 'ddd' then 'fff' else colume2 where colume2 = 'ddd'

 

posted @ 2021-06-28 18:02  我是叮当啊  阅读(403)  评论(0)    收藏  举报