MASK_LAST_N
描述
MASK_LAST_N 函数主要作用是对数据的后 N 个字节进行屏蔽,以保护敏感信息,常用于数据脱敏场景。其行为是将后 N 个字节中的大写字母替换为X
,小写字母替换为x
,数字替换为n
。
语法
MASK_LAST_N( <str> [, <n> ])
参数
参数 | 说明 |
---|---|
<str> | 需要被脱敏的数据 |
<n> | 可选参数,限制只让后 N 个字节进行数据屏蔽,默认是对整个字符串进行数据屏蔽 |
返回值
返回后 N 个字节中,字母和数字被替换后的字符串。特殊情况:
- 任意参数中有一个为 NULL,则返回 NULL
- 非字母和数字会原样返回
举例
select mask_last_n("1234-5678-8765-4321", 4);
+---------------------------------------+
| mask_last_n('1234-5678-8765-4321', 4) |
+---------------------------------------+
| 1234-5678-8765-nnnn |
+---------------------------------------+
select mask_last_n("1234-5678-8765-4321", null);
+-------------------------------------------+
| mask_last_n('1234-5678-8765-4321', NULL) |
+-------------------------------------------+
| NULL |
+-------------------------------------------+