目录
0 引言
日常开发中,我们经常会遇到需要将敏感信息隐去,如姓名、手机号等等即脱敏, 并且也是为了响应国密改造计划的号召,以实现密码自主可控、安全可靠。本文以姓名脱敏为例分别介绍Mysql数据库和DB2数据库的操作。
例:马化腾--马*腾、马云--马*
1 Mysql数据库
SELECT CONCAT( LEFT ( username, 1 ), '*',RIGHT(username,CHAR_LENGTH(username)-2) ) AS username FROM admin;
2 DB2数据库
SELECT CASE
WHEN LENGTH(username)>0 AND LENGTH(username)<=4 THEN
CONCAT(LEFT(username,2),'*')
ELSE
CONCAT(CONCAT(LEFT(username,2),'*'),RIGHT(username,LENGTH(username)-4))
END
FROM admin
注:DB2数据库的CONCAT函数只能拼接两个字符串,这是和Mysql不同的;
3 更新语句
UPDATE admin set username = CONCAT( LEFT ( username, 1 ), '*',RIGHT(username,1) )