跳到主要内容

MASK_FIRST_N

描述

MASK_FIRST_N 函数主要作用是对数据的前 N 个字节进行屏蔽,以保护敏感信息,常用于数据脱敏场景。其行为是将前 N 个字节中的大写字母替换为X,小写字母替换为x,数字替换为n

语法

MASK_FIRST_N( <str> [, <n> ])

参数

参数说明
<str>需要被脱敏的数据
<n>可选参数,限制只让前 N 个字节进行数据屏蔽,默认是对整个字符串进行数据屏蔽

返回值

返回前 N 个字节中,字母和数字被替换后的字符串。特殊情况:

  • 任意参数中有一个为 NULL,则返回 NULL
  • 非字母和数字会原样返回

举例

select mask_first_n("1234-5678-8765-4321", 4);
+----------------------------------------+
| mask_first_n('1234-5678-8765-4321', 4) |
+----------------------------------------+
| nnnn-5678-8765-4321 |
+----------------------------------------+
select mask_first_n("1234-5678-8765-4321", null);
+-------------------------------------------+
| mask_first_n('1234-5678-8765-4321', NULL) |
+-------------------------------------------+
| NULL |
+-------------------------------------------+