码迷,mamicode.com
首页 > 其他好文 > 详细

13-Hive字符函数

时间:2021-02-10 13:05:47      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:upper   nba   encode   逗号   字节   tin   分割   extra   number   

字符函数

函数返回值型 函数(参数) 描述
string base64(binary bin) 将二进制 bin 转换成 64 位的字符串
string concat(string|binary A, string|binary B...) 对二进制字节码或字符 串按次序进行拼接
array<struct<string,double>>

context_ngrams(array<array<string>>,

array<string>, int K, int pf)

与 ngram 类似,但 context_ngram()允许你

预算指定上下文(数组) 来去查找子序列

string concat_ws(string SEP, string A, string B...) 与 concat()类似,但使用 指定的分隔符喜进行分 隔
string concat_ws(string SEP,array<string>) 拼接 Array 中的元素并用 指定分隔符进行分隔
string decode(binary bin, string charset)

使用指定的字符集 charset 将二进制值 bin 解码成字符串,

支持的字 符集有:‘US-ASCII‘, ‘ISO-8859-1‘, ‘UTF-8‘, ‘UTF-16BE‘,

‘UTF-16LE‘, ‘UTF-16‘, 如果任意输入参数为 NULL 都将返回 NULL

binary encode(string src, string charset)

使用指定的字符集 charset 将字符串编码成 二进制值,

支持的字符集 有:‘US-ASCII‘, ‘ISO-8859-1‘, ‘UTF-8‘,

‘UTF-16BE‘, ‘UTF-16LE‘, ‘UTF-16‘, 如果任一输入参数为

NULL 都将返回 NULL

int find_in_set(string str, string strList)

返回以逗号分隔的字符 串中 str 出现的位置,如果参数 str 为

逗号或查找 失败将返回 0,如果任一 参数为 NULL

将返回 NULL 回 NULL

string format_number(number x, int d)

将数值 X 转换成 "#,###,###.##"格式字 符串,并保留 d

位小数, 如果 d 为 0,将进行四舍 五入且不保留小数

string get_json_object(string json_string, string path)

从指定路径上的 JSON 字 符串抽取出 JSON 对象,并返回这个对象的

JSON 格式,如果输入的 JSON 是非法的将返回 NULL,注意此路径上

JSON 字符串 只能由数字 字母 下划 线组成且不能有大写字 母和特殊

字符,且 key 不 能由数字开头,这是由于 Hive 对列名的限制

int length(string A) 返回字符串的长度
boolean in_file(string str, string filename) 如果文件名为filename的文件中有一行数据与字符串str匹配成功就返回true
int instr(string str, string substr)

查找字符串 str 中子字符 串 substr 出现的位置,如果查找失败将返回 0,

如果任一参数为 Null 将 返回 null,注意位置为从 1 开始的

int locate(string substr, string str[, int pos]) 查找字符串 str 中的 pos 位置后字符串 substr 第 一次出现的位置
string lower(string A) lcase(string A) 将字符串 A 的所有字母转 换成小写字母
string lpad(string str, int len, string pad)

从左边开始对字符串 str 使用字符串 pad 填充,最 终 len 长度为止,

如果字 符串 str 本身长度比 len 大的话,将去掉多余的部 分

string ltrim(string A) 去掉字符串 A 前面的空格
array<struct<string,double>> ngrams(array<array<string>>, int N, int K, int pf)

返回出现次数 TOP K 的的子序列,n 表示子序列的长度,具体看
StatisticsAndDataMining (这里的解释更易懂)

string printf(String format, Obj... args) 按照 printf 风格格式输 出字符串
string regexp_extract(string subject, string pattern, int index)

抽取字符串 subject 中符 合正则表达式 pattern 的 第 index 个部分的子字符串,

注意些预定义字符的 使用,如第二个参数如果 使用‘\s‘将被匹配到 s,‘\\s‘才是匹配空格

string repeat(string str, int n) 重复输出 n 次字符串 str
string reverse(string A) 反转字符串
string rpad(string str, int len,string pad)

从右边开始对字符串 str使用字符串 pad 填充,最终 len 长度为止,

如果字符串 str 本身长度比 len大的话,将去掉多余的部分

string rtrim(string A) 去掉字符串后面出现的 空格
string space(int n) 返回 n 个空格
array split(string str, string pat) 按照正则表达式 pat 来分 割字符串 str,并将分割 后的数组字符串的形式 返回
string trim(string A) 将字符串 A 前后出现的空 格去掉
binary unbase64(string str) 将 64 位的字符串转换二 进制值
string upper(string A) ucase(string A) 将字符串 A 中的字母转换 成大写字母
string initcap(string A) 将字符串 A 转换第一个字 母大写
int levenshtein(string A, string B) 计算两个字符串之间的差异大小 如:levenshtein(‘kitten‘, ‘sitting‘) = 3
string soundex(string A) 将普通字符串转换成 soundex 字符串

 

13-Hive字符函数

标签:upper   nba   encode   逗号   字节   tin   分割   extra   number   

原文地址:https://www.cnblogs.com/caiyongjiesmile/p/14393575.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!