substr函数或者substring函数。

    技术2022-07-11  91

    开发中,经常进行模糊查询或者进行截取字符串进行模糊匹配,常用的就是substr函数或者substring函数。

    使用语法: substr(string A, int start),substring(string A, int start) 两者用法一样,两个参数

    返回值: string

    说明:返回字符串A从start位置到结尾的字符串

    举例演示:

    hive> select substr(‘abcde’,3) fromlxw_dual; cde hive> select substring(‘abcde’,3) fromlxw_dual; cde hive> select substr(‘abcde’,-1) from lxw_dual; (和ORACLE相同,负数从最后一位开始截取) e hive> select substr(‘abcde’,1,2) 和selectsubstr(‘abcde’,0,2)结果一样ab,默认都是从第一位开始取. 语法: substr(string A, int start, int len),substring(string A, intstart, int len),用法一样,三个参数

    返回值: string

    说明:返回字符串A从start位置开始,长度为len的字符串

    举例演示:

    hive> select substr(‘abcde’,3,2) fromlxw_dual; cd hive> select substring(‘abcde’,3,2) fromlxw_dual; cd hive>select substring(‘abcde’,-2,2) fromlxw_dual; de 注意,实际开发中,比如查询表中dataforjy字段记录后5位包含#的记录条数?同样可以用substr进行后5位截取,然后用like或者rlike进行匹配(具体参考我的另外一篇博客),但是如果出现dataforjy字段部分记录的长度不足五位的情况,怎么处理?

    hive > select substr(‘abcde’,6) (结果是空值)

    From: 炫龙网

    Processed: 0.010, SQL: 9