MYSQL中批量替换某个字段的部分数据

1,在字段前添加前缀

UPDATE 表A SET 字段B = CONCAT( '100-', 字段B);

2,把 `表 A` 的 `字段B` 中的 'aaa 批量替换成 'bbb'

 UPDATE 表A SET 字段B = replace(字段B, 'aaa', 'bbb');
3,替换空值 (NULL)为空字符串
UPDATE `table` SET `column` = '' WHERE `column` IS NULL; 

 4,删除所有的空格

UPDATE 表A SET 字段B = TRIM(字段B);

5,删除所有饱含  '['  或者  ']'  或者  '.'  的字符

UPDATE 表A SET 字段B = REPLACE(字段B, '[', '')  WHERE INSTR(字段B, '[' ) > 0;

6,替换所有含中文'-'的为英文'-'

UPDATE 表A SET 字段B = REPLACE(字段B, '-', '-')  WHERE INSTR(字段B, '-') > 0;

7,将所有的 '年', '月' 都替换成 '-'

UPDATE 表A  SET 字段B = REPLACE(字段B, '年', '-')  WHERE INSTR(字段B, '年') > 0;
UPDATE 表A  SET 字段B = REPLACE(字段B, '月', '-')  WHERE INSTR(字段B, '月') > 0;

8,将所有 '2014-04-' 这种类型的替换成 '2014-04-01'

UPDATE 表A  SET 字段B = CONCAT( 字段B, '01') 
WHERE SUBSTRING_INDEX(字段B, '-', -1) = '' 
AND LENGTH(字段B) > 0 AND LENGTH(字段B) > 5;

9,将所有 '2014-' 这种类型替换成 '2014-01-01'

UPDATE 表A SET 字段B = CONCAT(字段B, '01-01') 
WHERE INSTR(字段B, '-') > 0 AND LENGTH(字段B) = 5;

10,将所有包含 '-',但是位数小于 8 的改成追加 '-01'

UPDATE 表A  SET 字段B = CONCAT( 字段B, '-01') 
WHERE INSTR(字段B, '-') > 0 AND  LENGTH(字段B) < 8;

11,将所有 '2014' 这样的改成 '2014-01-01'

UPDATE 表A SET 字段B = CONCAT(字段B, '-01-01') 
WHERE INSTR(字段B, '-') = 0 AND  LENGTH(字段B) = 4;

12,最后,将所有 '2014-01-01' 格式化成 '2014年01月'

UPDATE 表A SET 字段B = DATE_FORMAT(字段B, '%Y年%m月') WHERE INSTR(字段B, '-') > 0;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值