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