mysql数据库 不同格式数据脱敏,数据修改

文章提供了四种SQL操作示例,包括姓名、电话号码和JSON格式数据的脱敏处理,以保护个人隐私。方法包括使用LEFT,RIGHT,CONCAT,REPLACE,SUBSTRING和JSON_SET函数来替换或隐藏敏感信息。

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

一 ,姓名脱敏

只留下姓氏 ,其余全部改为*号

也可修改其他字段,该sql可以留下前几位,其余按照位数置*

UPDATE  user SET
fang_ke_xing_ming = rpad( substring( fang_ke_xing_ming, 1, 1 ), char_length( fang_ke_xing_ming ), '*' ),

结果如下:

二,电话号码脱敏

只保留前几位和后几位,位数可以自己设置

UPDATE 
    user
    SET
    fang_ke_shou_ji_hao = CONCAT( LEFT ( fang_ke_shou_ji_hao, 3 ), '****' ,RIGHT(fang_ke_shou_ji_hao,4)),

三,mysq中json格式脱敏

update fang_ke_yu_yue set suo_zai_xue_xiao = json_set(suo_zai_xue_xiao,'$.qu',  lpad( substring( suo_zai_xue_xiao->>'$.qu', char_length( suo_zai_xue_xiao->>'$.qu' ), char_length( suo_zai_xue_xiao->>'$.qu' ) ), char_length( suo_zai_xue_xiao->>'$.qu' ), '*' ) )

四,根据关键字查询并且隐藏其中固定位置的字段

    UPDATE zhi_an SET dan_wei = REPLACE (dan_wei, SUBSTRING(dan_wei,1,3),'**' ) WHERE dan_wei regexp '市'

其他情况可根据实际需要组合使用以上语法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值