update语句对多个字段通过不同数值进行不同更新操作

本文介绍了一种批量修正数据库中空字符串错误的方法,通过SQL语句将特定字段的空字符串''转换为NULL,适用于table_crm_customer表的qq、company_name等字段,确保数据一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

修正数据库错误数据使用(修复大量数据肯定不能手动逐条修复)

table_crm_customer 表中多条数据的部分字段存储的数据值为空字符串’’ 而不是null

修正方法肯定是找到数值为’’ 的字段将其值重新设定为 null

部分记录的’qq’字段写入的是 ‘’, 也有’company_name’写入的是’’ 等 无明显规律

sql语句:
update table_user set user_name=(case when user_name='' then null else user_name end), user_nick=(case when user_nick='' then null else user_nick end), user_phone=(case when user_phone='' then null else user_phone end), user_email=(case when user_email='' then null else user_email end) where user_name='' or user_nick='' or user_phone='' or user_email=''
在这里插入图片描述
说明:
在这里插入图片描述

语句中 case 后面接判断条件 when xxx
判断条件成立则执行此字段的更新 更新值在 then 后面拼接
else 为其它条件 可以不书写
最后加上筛选条件 where 如当前语句是对多个字段修正 则 or 连续拼接
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值