SQL——修改表数据,满足某些条件时,设定某个值(SQL IF ELSE)

数据库MySQL 专栏收录该内容
7 篇文章 0 订阅

需求

维护表数据:
       1、当pm字段值小于24时,将其值设为6;
       2、当pm字段值大于24 AND 小于36时,将其值设为24;
       3、当前值大于36,将其值设为36。

SQL

一、多次修改

#pm<24 pm设为6
UPDATE tb_weekly_plan SET pm = 6 WHERE pm + 0 < 24;
#24<pm<36 pm设为24
UPDATE tb_weekly_plan SET pm = 24 WHERE pm + 0 > 24 AND pm + 0 < 36;
#36<pm pm设为36
UPDATE tb_weekly_plan SET pm = 36 WHERE pm + 0 > 36;

二、CASE WHEN TEHN ELSE END

#CASE WHEN THEN ELSE END
UPDATE tb_weekly_plan SET pm = CASE
WHEN pm + 0 < 24 THEN 6
WHEN pm + 0 > 24 AND pm + 0 < 36 THEN 24
ELSE 36
END;

三、IF、ELSEIF、ELSE怎么写???求解

#附上某次尝试代码
UPDATE tb_weekly_plan SET pm = 
IF pm + 0 < 24 THEN 6
ELSEIF pm + 0 > 24 AND pm + 0 < 36 THEN 24
ELSE THEN 36;
  • 1
    点赞
  • 0
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 黑客帝国 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值