1、字符串判断
函数 | 描述 | |
---|---|---|
1 | coalesce(expr1, expr2, ...) :空值处理 | 函数说明:返回第一个非空参数,类似ifnull(expr1, expr2),可以设置多个表达式 示例:如果处理部门为空,则填充发起部门。 |
2 | nullif(expr1, expr2) :等值判定为空 | 函数说明:如果expr1等于expr2,则返回null,否则返回expr1; 示例: > SELECT nullif(2, 2); NULL |
3 | nvl(expr1, expr2) :空值处理 | 函数说明:如果为null,则返回值;支持2个表达式 示例:如果处理部门为空,则填充发起部门。 |
4 | nvl2(expr1, expr2, expr3) :空值处理 | 函数说明:如果不为null,则返回值,支持3个表达式 示例: > SELECT nvl2(NULL, 2, 1); 1 |
5 | endswith(left, right) :结尾判断 | 函数说明:返回布尔值。如果从左往右,以右侧字符串结尾,则该值为True。如果任一输入表达式为NULL,则返回NULL。否则,返回False。左边或右边都必须是STRING或BINARY类型。 示例: > SELECT endswith('Spark SQL', 'SQL'); true > SELECT endswith('Spark SQL', 'Spark'); false |
2、字符串拼接
函数 | 描述 | |
---|---|---|
1 | concat(col1, col2, ..., colN) : | 函数说明:连接字符串 示例: |
2 | concat_ws | 函数说明:用分隔符连接字符串 示例: |
3、字符串长度
函数 | 描述 | |
---|---|---|
1 | 返回字符串的长度 函数说明: 示例: | |
2 | 返回字符串之间的Levenshtein距离 函数说明: 示例: |
4、字符串查找、截取
函数 | 描述 | |
---|---|---|
1 | 返回从1开始的字符出现索引 函数说明: 示例: | |
2 | 返回第一个 n 字符 函数说明: 示例: | |
3 | 返回子字符串第一次出现的位置 函数说明: 示例: | |
4 | 返回第一个值 函数说明: 示例: | |
5 | 返回最后一个值 函数说明: 示例: | |
6 | 提取URL的一部分 函数说明: 示例: | |
7 | 返回重复的字符串 函数说明: 示例: | |
8 | 函数说明:返回偏移前面的值 示例: | |
9 | substring(str, pos[, len]) | 函数说明:返回str从pos开始、长度为len的子字符串,或字节数组从pos结束、长度为len的切片。 示例: |
10 | 函数说明:返回子字符串的索引 示例: | |
11 | 函数说明:拆分字符串 示例: |
5、字符串替换
函数 | 描述 | |
---|---|---|
1 | regexp_extract | 提取与正则表达式匹配的内容 |
2 | regex_replace | 替换匹配正则表达式的内容 |
3 | replace | 替换字符串的所有实例 |
4 | translate | 替换字符串中的值 |
6、字符串补位
函数 | 描述 | |
---|---|---|
1 | initca p | 将字符串更改为标题大小写 |
2 | lcase , lower | 将字符串更改为全部小写 |
3 | lpad | 垫住字符串的左侧 |
4 | rpad | 将字符串的右侧填充 |
5 | rtrim | 删除尾随空格 |
6 | trim | 删除前导字符和尾随字符 |
7 | ucase , upper | 将字符串更改为全部大写 |
7、计数、排名
函数 | 描述 | |
---|---|---|
1 | count | 返回行的总计数 |
2 | rank | 计算值的排名 |
8、增加序号
函数 | 描述 | |
---|---|---|
1 | row_number | 分配唯一行号 |
2 |