`

HIVE教程(二)HIVE常用函数之字符串操作

    博客分类:
  • Hive
阅读更多

一、字符串操作

1、字符串长度函数:length
返回字符串A的长度
语法: length(string A) 
返回值: int 
例子:
 select length("test") from dual;
 结果:4
 2、reverse
 字符串反转函数
 语法: reverse(string A) 
返回值: string 
select reverse('test') from dual; 
结果:tset
3、concat
字符串连接函数
详细说明:返回输入字符串连接后的结果,支持任意个输入字符串
语法: concat(string A, string B…) 
返回值: string
select concat(‘abc’,'def’,'gh’) from dual; 
abcdefgh 
4、带分隔符字符串连接函数:concat_ws
语法: concat_ws(string SEP, string A, string B…) 
返回值: string 
说明:返回输入字符串连接后的结果,SEP表示各个字符串间的分隔符  
举例: 
    hive> select concat_ws(‘,’,'abc’,'def’,'gh’) from dual; 
    abc,def,gh 

5、字符串截取函数:substr,substring

    语法: substr(string A, int start),substring(string A, int start) 
    返回值: string 
    说明:返回字符串A从start位置到结尾的字符串 
    举例: 
    hive> select substr(‘abcde’,3) from dual; 
    cde 
    hive> select substring(‘abcde’,3) from dual; 
    cde 
    hive>  select substr(‘abcde’,-1) from dual;  (和ORACLE相同) 
    e 
6、字符串截取函数:substr,substring

    语法: substr(string A, int start, int len),substring(string A, int start, int len) 
    返回值: string 
    说明:返回字符串A从start位置开始,长度为len的字符串 
    举例: 
    hive> select substr(‘abcde’,3,2) from dual; 
    cd 
    hive> select substring(‘abcde’,3,2) from dual; 
    cd 
    hive>select substring(‘abcde’,-2,2) from dual; 
    de 

7、字符串转大写函数:upper,ucase
    语法: upper(string A) ucase(string A) 
    返回值: string 
    说明:返回字符串A的大写格式 
    举例: 
    hive> select upper(‘abSEd’) from dual; 
    ABSED 
    hive> select ucase(‘abSEd’) from dual; 
     ABSED  

8、字符串转小写函数:lower,lcase
    语法: lower(string A) lcase(string A) 
    返回值: string 
    说明:返回字符串A的小写格式 
    举例: 
    hive> select lower(‘abSEd’) from dual; 
    absed 
    hive> select lcase(‘abSEd’) from dual; 
        absed

9、去空格函数:trim
    语法: trim(string A) 
    返回值: string 
    说明:去除字符串两边的空格 
    举例: 
    hive> select trim(‘ abc ‘) from dual; 
    abc  

10、左边去空格函数:ltrim
    语法: ltrim(string A) 
    返回值: string 
    说明:去除字符串左边的空格 
    举例: 
    hive> select ltrim(‘ abc ‘) from dual; 
    abc 

11、右边去空格函数:rtrim

    语法: rtrim(string A) 
    返回值: string 
    说明:去除字符串右边的空格 
    举例: 
    hive> select rtrim(‘ abc ‘) from dual; 
    abc 


10、正则表达式解析函数:regexp_extract

其中的index,是按照正则字符串()的位置

    语法: regexp_extract(string subject, string pattern, int index) 
    返回值: string 
    说明:将字符串subject按照pattern正则表达式的规则拆分,返回index指定的字符。注意,在有些情况下要使用转义字符 
    举例: 
    hive> select regexp_extract(‘foothebar’, ‘foo(.*?)(bar)’, 1) from dual; 
    the 
    hive> select regexp_extract(‘foothebar’, ‘foo(.*?)(bar)’, 2) from dual; 
    bar 
    hive> select regexp_extract(‘foothebar’, ‘foo(.*?)(bar)’, 0) from dual; 
    foothebar 

 

11、函数parse_url,解析URL字符串
    parse_url(url, partToExtract[, key]) - extracts a part from a URL 
    解析URL字符串,partToExtract的选项包含[HOST,PATH,QUERY,REF,PROTOCOL,FILE,AUTHORITY,USERINFO]。 
     
    举例: 
    * parse_url('http://facebook.com/path/p1.php?query=1', 'HOST')返回'facebook.com'  
    * parse_url('http://facebook.com/path/p1.php?query=1', 'PATH')返回'/path/p1.php'  
    * parse_url('http://facebook.com/path/p1.php?query=1', 'QUERY')返回'query=1', 
    可以指定key来返回特定参数,例如 
    * parse_url('http://facebook.com/path/p1.php?query=1', 'QUERY','query')返回'1', 
     
    * parse_url('http://facebook.com/path/p1.php?query=1#Ref', 'REF')返回'Ref'  
    * parse_url('http://facebook.com/path/p1.php?query=1#Ref', 'PROTOCOL')返回'http' 

 

12、json解析函数:get_json_object

语法: get_json_object(string json_string, string path)
    返回值: string 
    说明:解析json的字符串json_string,返回path指定的内容。如果输入的json字符串无效,那么返回NULL。 
    举例: 
    hive> select  get_json_object(‘{“store”: 
    >   {“fruit”:\[{"weight":8,"type":"apple"},{"weight":9,"type":"pear"}], 
    >    “bicycle”:{“price”:19.95,”color”:”red”} 
    >   }, 
    >  “email”:”amy@only_for_json_udf_test.net”, 
    >  “owner”:”amy” 
    > } 
    > ‘,’$.owner’) from dual; 
    amy 

 使用实例:
    select get_json_object('{"store":{"fruit":\["aa","bb","cc"]},"owner":"amy"}','$.store.fruit[0]') from test_msg limit 1; 

13、空格字符串函数:space

语法: space(int n)

    返回值: string 
    说明:返回长度为n的字符串 
    举例: 
    hive> select space(10) from dual; 
    hive> select length(space(10)) from dual; 
    10 
 

14、重复字符串函数:repeat

语法: repeat(string str, int n)

    返回值: string 
    说明:返回重复n次后的str字符串 
    举例: 
    hive> select repeat(‘abc’,5) from dual; 
    abcabcabcabcabc 

15、首字符ascii函数:ascii

语法: ascii(string str)

    返回值: int 
    说明:返回字符串str第一个字符的ascii码 
    举例: 
    hive> select ascii(‘abcde’) from dual; 
    97 

16、左补足函数:lpad

语法: lpad(string str, int len, string pad)

    返回值: string 
    说明:将str进行用pad进行左补足到len位 
    举例: 
    hive> select lpad(‘abc’,10,’td’) from dual; 
    tdtdtdtabc 

 与GP,ORACLE不同,pad 不能默认

17、右补足函数:rpad

语法: rpad(string str, int len, string pad)

    返回值: string 
    说明:将str进行用pad进行右补足到len位 
    举例: 
    hive> select rpad(‘abc’,10,’td’) from dual; 
    abctdtdtdt 

 

18、分割字符串函数: split

语法:  split(string str, string pat)
    返回值:  array 
    说明: 按照pat字符串分割str,会返回分割后的字符串数组 
    举例: 
    hive> select split(‘abtcdtef’,'t’) from dual; 
    ["ab","cd","ef"] 

19集合查找函数: find_in_set

语法: find_in_set(string str, string strList)

    返回值: int 
    说明: 返回str在strlist第一次出现的位置,strlist是用逗号分割的字符串。如果没有找该str字符,则返回0 
    举例: 
    hive> select find_in_set(‘ab’,'ef,ab,de’) from dual; 
    2 
    hive> select find_in_set(‘at’,'ef,ab,de’) from dual; 
    0 

分享到:
评论

相关推荐

    Hive函数大全.pdf

    Hive允许将一种数据类型转换为另一种,例如`CAST(a AS INT)`将字符串a转换为整数,`TO_DATE(date_string)`将日期字符串转换为日期类型。 四、条件函数 `IF()`、`CASE WHEN THEN ELSE END`等函数允许根据条件执行...

    hive函数大全.doc

    Hive 函数大全是 Hive 中各种常用函数的集合,涵盖了日期函数、集合统计函数、字符串函数、条件函数、复合类型构建操作等多个方面。下面是一些常用的 Hive 函数: 关系运算 关系运算是 Hive 中最基本的操作之一,...

    Hive常用函数大全.pdf

    ### Hive常用函数详解 #### 一、关系运算 在Hive中,关系运算是非常基础且重要的部分,它包括但不限于等值比较、不等值比较、大小比较等。这些操作对于进行数据筛选、条件判断等都非常关键。 ##### 1. 等值比较 ...

    1_hive函数大全.pdf

    标题“1_hive函数大全.pdf”表明本文档是一份全面介绍Hive函数的手册。Hive是一个建立在Hadoop之上的数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,能将SQL语句转换为...

    hive函数参考手册,包含常用的hive内置函数.doc

    此外,还有许多其他的 Hive 函数,例如字符串函数、日期函数、聚合函数等。这些函数可以帮助用户更方便地处理和分析数据。 在使用 Hive 函数时,需要注意函数的语法和参数类型,以确保正确地使用函数并获得正确的...

    hive常用函数参数手册

    ### Hive常用函数参数手册 #### 一、简介 在大数据处理领域,Hive作为一个广泛使用的数据仓库工具,提供了丰富的内置函数来支持数据的处理与分析。本文档旨在介绍Hive中的常用函数及其用法,帮助用户更好地理解和应用...

    hive函数大全 函数参考

    ### Hive函数大全详解 Hive是一种数据仓库工具,它提供了SQL-like语言(HiveQL)来处理存储在Hadoop文件系统中的大型数据集。本文档将详细介绍Hive中各种常用的函数,包括关系运算、数学运算、逻辑运算、数值计算、...

    hive常用函数

    Hive作为一款数据仓库工具,主要用于处理...熟练使用Hive函数,不仅可以提高数据处理的效率,还可以提升数据查询和分析的灵活性。对于数据科学家和工程师而言,深入理解Hive的各种函数对于日常工作的开展至关重要。

    hive函数大全(中文版)

    4. 带分隔符字符串连接函数:concat_ws 23 5. 字符串截取函数:substr,substring 24 6. 字符串截取函数:substr,substring 24 7. 字符串转大写函数:upper,ucase 24 8. 字符串转小写函数:lower,lcase 25 9. 去空格...

    一些有用的自定义配置单元udf函数、特殊数组、json、数学、字符串函数。___下载.zip

    除了Hive内置的字符串函数,如concat、substring、trim等,自定义字符串函数可能提供了更丰富的文本处理能力,如正则表达式匹配、字符串格式化、编码解码等。 总的来说,这个压缩包提供的资源对于Hive用户来说是一...

    HIVE函数详解大全

    3. 字符串函数:`CONCAT`, `SUBSTRING`, `TRIM`, `UPPER`, `LOWER`,用于字符串操作。 4. 条件函数:`IF`, `CASE WHEN THEN ELSE END`,实现条件判断和结果选择。 5. 集合函数:`IN`, `EXISTS`, `ALL`, `ANY`,处理...

    Hive函数及语法说明

    Hive提供了一些内置函数,用于执行数学运算、字符串处理、日期处理等操作。这些函数可以在 Hive 的查询语句中使用,以便对数据进行处理和分析。 #### 数值函数 Hive 提供了多种数值函数,用于执行数学运算,例如:...

    hive常用运算和函数1

    本篇文章主要探讨了Hive中的常见运算和函数,特别是关系运算,这对于理解和编写Hive查询语句至关重要。 关系运算符是数据库查询语言的基础,Hive 支持的标准关系运算符包括等值比较、不等值比较、小于、小于等于、...

    Oracle字符相似度函数

    在SQL查询中,我们可以直接使用这些函数来比较不同字符串间的相似程度,从而进行数据匹配、模糊搜索等操作。 Oracle提供了多个字符相似度函数,其中最常用的包括`SIMILARITY()`和`UTL_MATCH`包中的几个函数,如`...

    hive常用运算和函数.docx

    ### Hive 常用运算和函数详解 #### 第一部分:关系运算 在处理大数据时,Apache Hive 是一种广泛使用的工具,它提供了 SQL 查询语言风格的接口来管理存储在 Hadoop 文件系统中的结构化数据。Hive 支持多种类型的...

    Hive常用函数

    - **简单函数**:这些函数处理单条记录,包括关系运算、数学运算、逻辑运算、数值计算、类型转换、日期函数、条件函数、字符串函数等。 - **聚合函数**:这类函数处理多条记录,如 `sum()` 求和、`count()` 求数据...

    Hive教程--命令

    创建数据库是 Hive 中最基本的操作之一。Hive 中的数据库是一个命名空间或表的集合。使用 CREATE DATABASE 语句可以创建数据库。在 Hive 中,配置单元包含一个名为 default 的默认数据库。CREATE DATABASE 语句的...

    《Hive数据仓库案例教程》教学大纲.pdf

    7. **Hive函数**:本章涉及Hive内置函数的使用,如统计函数、日期函数、字符串函数等,使用户能编写复杂的查询语句。 8. **Hive数据压缩**:讨论Hive如何进行数据压缩,提高存储效率和查询性能,理解各种压缩算法在...

    Hive教程.pdf

    - **字符串类型**: STRING、VARCHAR、CHAR - **布尔类型**: BOOLEAN - **日期时间类型**: DATE、TIMESTAMP - **复合类型**: ARRAY、MAP、STRUCT、UNION #### 三、Hive DDL数据定义语法 - **创建数据库**: - `...

Global site tag (gtag.js) - Google Analytics