Apache Hive 数据掩码函数教程

hive 提供了一些数据掩码函数,这里整理出来为需要设计掩码功能的开发者作为参考。

mask 函数

语法如下:

mask(string str[, string upper[, string lower[, string number]]])

缺省为大写转为X,小写转为x,数值转为n。返回掩码版本字符串(自 Hive 2.1.0起)。

举例:mask("abcd-EFGH-8765-4321") => in xxxx-XXXX-nnnn-nnnn

我们可以覆盖默认功能,第二个参数用于替换大写字母,第三个替换小写字母,第四个替换数值字符。

举例:mask("abcd-EFGH-8765-4321", "U", "l", "#") => llll-UUUU-####-####

mask_first_n

语法如下:

mask_first_n(string str[, int n])	

返回掩码前n个值的字符串 (自 Hive 2.1.0起).缺省为大写转为X,小写转为x,数值转为n。

举例:
mask_first_n("1234-5678-8765-4321", 4) => nnnn-5678-8765-4321.

mask_last_n

语法如下:

mask_last_n(string str[, int n])

返回掩码后n个值的字符串 (自 Hive 2.1.0起).缺省为大写转为X,小写转为x,数值转为n。

举例:mask_last_n("1234-5678-8765-4321", 4) => 1234-5678-8765-nnnn.

mask_show_first_n

语法如下:

mask_show_first_n(string str[, int n])	

返回前n个值未掩码的字符串 (自 Hive 2.1.0起).缺省为大写转为X,小写转为x,数值转为n。

举例:mask_show_first_n("1234-5678-8765-4321", 4) => 1234-nnnn-nnnn-nnnn.

mask_show_last_n

语法如下:

mask_show_last_n(string str[, int n])	

返回后n个值未掩码的字符串 (自 Hive 2.1.0起).缺省为大写转为X,小写转为x,数值转为n。

举例:mask_show_last_n("1234-5678-8765-4321", 4) => nnnn-nnnn-nnnn-4321.

mask_hash

语法如下:

mask_hash(string|char|varchar str)	

基于字符串返回哈希值(自 Hive 2.1.0起),该散列函数是一致的,可用于跨表连接掩码值。对于非字符串类型,该函数返回null。

你可能感兴趣的:(数据库,大数据处理,hive,hadoop,数据仓库)