美文网首页大数据开发
大数据开发:Hive支持的常用函数总结

大数据开发:Hive支持的常用函数总结

作者: 成都加米谷大数据 | 来源:发表于2021-06-09 17:37 被阅读0次

    Hive作为Hadoop生态圈重要的支持组件之一,在具体的开发场景下,可以通过内置额函数解决大部分的需求,而Hive支持的常用函数,也是学习当中必须要掌握的。今天的大数据开发学习分享,我们就主要来讲讲Hive支持的常用函数都有哪些?

    Hive内部支持大量的函数,可以通过SHOW FUNCTIONS查看Hive的内置函数。Hive函数主要包含数学函数,集合函数,类型转换函数,日期函数,条件函数,字符串函数,聚合函数和表生成函数等。

    1、数学函数

    数学函数是Hive内部提供的专门用于数学运算的函数,如round()函数和sqrt()函数等。round()函数主要用来对给定的数字进行四舍五入取近似值,如下所示:

    hive(default)>SELECT ROUND(5.5);

    OK

    _c0

    6.0

    Time taken:0.248 seconds,Fetched:1 row(s)

    sqrt()函数表示对给定的数字取平方根,如下所示:

    hive(default)>SELECT Sqrt(5);

    OK

    _c0

    2.23606797749979

    Time taken:0.06 seconds,Fetched:1 row(s)

    2、集合函数

    集合函数是Hive内部处理集合数据的函数,如size()函数和map_keys()函数。size()函数主要用来获取map或者数组的长度,如下所示:

    hive(default)>SELECT size(MAP("name","alice"));

    OK

    _c0

    1

    Time taken:0.084 seconds,Fetched:1 row(s)

    map_keys()函数主要用来获取map集合中所有的key,如下所示:

    hive(default)>SELECT map_keys(MAP("name","alice"));

    OK

    _c0

    ["name"]

    Time taken:0.064 seconds,Fetched:1 row(s)

    3、类型转换函数

    Hive内部提供了一些可以将数据类型进行转换的函数,这些函数能够将某些数据类型转换为便于查询或者计算统计的数据类型。例如cast()函数,其基本格式为cast(value as TYPE),能够将给定的数据value转化为TYPE类型,如下所示:

    hive(default)>SELECT CAST("5"AS INT);

    OK

    _c0

    5

    Time taken:0.035 seconds,Fetched:1 row(s)

    4、日期函数

    日期函数是一类专门处理日期数据的函数,能够方便地对日期数据进行转换和处理。例如:unix_timestamp()函数,其能够方便地获取服务器的时间戳,如下所示:

    hive(default)>SELECT unix_timestamp();

    unix_timestamp(void)is deprecated.Use current_timestamp instead.

    OK

    _c0

    1605003140

    Time taken:0.062 seconds,Fetched:1 row(s)

    5、条件函数

    条件函数是一类进行条件判断的函数,通常会用于WHERE语句,如isnull()函数和nvl()函数。isnull()函数表示如果给定的数据为NULL,则返回true,否则返回false,如下所示:

    hive(default)>SELECT isnull(NULL);

    OK

    _c0

    true

    Time taken:0.059 seconds,Fetched:1 row(s)

    hive(default)>SELECT isnull(1);

    OK

    _c0

    false

    Time taken:0.041 seconds,Fetched:1 row(s)

    6、字符串函数

    字符串函数是一类处理字符串数据的函数,可以对字符串进行拼接、转换等操作,如length()函数和concat()函数。length()函数用于获取给定字符串的长度,如下所示:

    hive(default)>SELECT length('abc');

    OK

    _c0

    3

    Time taken:0.047 seconds,Fetched:1 row(s)

    concat()函数能够对给定的字符串进行依次拼接操作,如下所示:

    hive(default)>SELECT concat('abc','def');

    OK

    _c0

    abcdef

    Time taken:0.054 seconds,Fetched:1 row(s)

    7、聚合函数

    聚合函数是一类对数据进行统计计算的函数,能够方便地对Hive中的数据进行统计处理,如count()函数和sum()函数。count()函数能够获取Hive数据表中的数据条数,如下所示:

    hive(default)>SELECT count(*)FROM student;

    _c0

    8

    Time taken:2.465 seconds,Fetched:1 row(s)

    sum()函数主要用来对数据表中的某一列数据进行求和统计,如下所示:

    hive(default)>SELECT sum(s_id)FROM student;

    _c0

    36.0

    Time taken:1.514 seconds,Fetched:1 row(s)

    8、表生成函数

    表生成函数接收0个或者多个输入参数,产生多列或多行输出,如explode()函数,如下所示:

    hive(default)>SELECT explode(array("a","b","c"));

    OK

    col

    a

    b

    c

    Time taken:0.059 seconds,Fetched:3 row(s)

    注意:explode()函数将一行的数据拆分成多行,它的参数必须为map或array

    关于大数据开发学习,Hive支持的常用函数,以上就为大家做了简单的介绍了。Hive作为大数据生态的重要组件,学习当中需要尤其重视,对于常用函数要做到心中有数,熟练且灵活的运用。

    相关文章

      网友评论

        本文标题:大数据开发:Hive支持的常用函数总结

        本文链接:https://www.haomeiwen.com/subject/wzgeeltx.html