case when then else end 在 update 语句 中的使用


#  case  when then else  end  在 update 语句 中的使用
select *
from boys;
# +--+------+---+----+-------+-------------------+----+---------------+
# |id|name  |sex|age |address|created_time       |enum|create_time_str|
# +--+------+---+----+-------+-------------------+----+---------------+
# |1 |慕容皝   |男  |22  |NULL   |1000-05-01 17:43:43|1   |1000-05-01     |
# |2 |慕容冲   |男  |33  |NULL   |1005-05-21 17:43:49|1   |1005-05-21     |
# |3 |慕容垂   |男  |44  |NULL   |1101-05-21 17:43:52|1   |1101-05-21     |
# |4 |慕容博   |男  |55  |NULL   |1121-05-21 17:43:55|1   |1121-05-21     |
# |6 |慕容复   |男  |55  |NULL   |1190-05-21 17:43:58|1   |1190-05-21     |
# |8 |慕容吹雪  |女  |NULL|NULL   |2021-05-22 17:44:01|2   |2021-05-22     |
# |9 |慕容未来人1|男  |NULL|NULL   |2040-05-22 17:44:01|1   |2040-05-22     |
# |10|慕容未来人2|女  |NULL|NULL   |2050-05-22 17:44:01|2   |2050-05-22     |
# |11|慕容吹雪2 |女  |NULL|NULL   |1901-05-22 17:44:01|2   |1901-05-22     |
# |12|慕容复2  |男  |55  |NULL   |1899-05-21 17:43:58|1   |1899-05-21     |
# +--+------+---+----+-------+-------------------+----+---------------+
#  需求 在  age 是 null  的记录上,在原来name 基础上增加 上性别
update boys
set name = (case  when sex = '男' then concat(name ,'男') else  concat(name ,'女')  end  )
where age is null ;


select *
from boys;
# +--+-------+---+----+-------+-------------------+----+---------------+
# |id|name   |sex|age |address|created_time       |enum|create_time_str|
# +--+-------+---+----+-------+-------------------+----+---------------+
# |1 |慕容皝    |男  |22  |NULL   |1000-05-01 17:43:43|1   |1000-05-01     |
# |2 |慕容冲    |男  |33  |NULL   |1005-05-21 17:43:49|1   |1005-05-21     |
# |3 |慕容垂    |男  |44  |NULL   |1101-05-21 17:43:52|1   |1101-05-21     |
# |4 |慕容博    |男  |55  |NULL   |1121-05-21 17:43:55|1   |1121-05-21     |
# |6 |慕容复    |男  |55  |NULL   |1190-05-21 17:43:58|1   |1190-05-21     |
# |8 |慕容吹雪女  |女  |NULL|NULL   |2021-05-22 17:44:01|2   |2021-05-22     |
# |9 |慕容未来人1男|男  |NULL|NULL   |2040-05-22 17:44:01|1   |2040-05-22     |
# |10|慕容未来人2女|女  |NULL|NULL   |2050-05-22 17:44:01|2   |2050-05-22     |
# |11|慕容吹雪2女 |女  |NULL|NULL   |1901-05-22 17:44:01|2   |1901-05-22     |
# |12|慕容复2   |男  |55  |NULL   |1899-05-21 17:43:58|1   |1899-05-21     |
# +--+-------+---+----+-------+-------------------+----+---------------+

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值