HiveQL-函数

本文概述

  • Hive中的数学函数
  • Hive中的汇总函数
  • Hive中的其他内置函数
Hive提供了各种内置函数来执行数学和聚合类型运算。在这里, 我们将在下表的记录上执行此类功能:
HiveQL-函数

文章图片
Hive中的功能示例
让我们创建一个表, 并使用以下步骤将数据加载到其中:-
  • 选择我们要在其中创建表的数据库。
hive> use hql;

  • 使用以下命令创建配置单元表:-
hive> create table employee_data (Id int, Name string , Salary float) row format delimited fields terminated by ', ' ;

  • 现在, 将数据加载到表中。
hive> load data local inpath '/home/codegyani/hive/emp_details' into table employee_data;

  • 让我们使用以下命令获取已加载的数据:-
hive> select * from employee_data;

HiveQL-函数

文章图片
现在, 我们将通过相应的示例讨论数学, 集合函数和其他内置函数。
Hive中的数学函数 Hive中常用的数学函数是:-
返回类型 功能 描述
BIGINT round(num) 它返回BIGINT为DOUBLE num的舍入值。
BIGINT floor(num) 它返回小于或等于num的最大BIGINT。
BIGINT 天花板数(num), 天花板数(double num) 它返回大于或等于num的最小BIGINT。
DOUBLE exp(num) 它返回num的指数。
DOUBLE ln(num) 它返回num的自然对数。
DOUBLE log10(num) 它返回num的以10为底的对数。
DOUBLE sqrt(num) 它返回num的平方根。
DOUBLE abs(num) 它返回num的绝对值。
DOUBLE sin(d) 它以弧度返回num的罪过。
DOUBLE asin(d) 它以弧度返回num的反正弦值。
DOUBLE cos(d) 它以弧度返回num的余弦值。
DOUBLE acos(d) 它以弧度返回num的反余弦值。
DOUBLE tan(d) 它以弧度返回num的切线。
DOUBLE atan(d) 它以弧度返回num的反正切值。
Hive中的数学函数示例
  • 让我们看一个获取每个员工薪水平方根的示例。
hive> select Id, Name, sqrt(Salary) from employee_data ;

HiveQL-函数

文章图片
Hive中的汇总函数 在Hive中, 聚合函数返回一个由多个行计算得出的值。我们来看一些常用的聚合函数:-
返回类型 操作员 描述
BIGINT count(*) 它返回文件中存在的行数的计数。
DOUBLE sum(col) 它返回值的总和。
DOUBLE sum(DISTINCT col) 它返回不同值的总和。
DOUBLE avg(col) 它返回值的平均值。
DOUBLE avg(DISTINCT col) 它返回不同值的平均值。
DOUBLE min(col) 它比较这些值并从中返回最小值。
DOUBLE max(col) 它比较这些值并从中返回最大值。
Hive中的聚合函数示例
  • 让我们看一个获取员工最高薪水的示例。
hive> select max(Salary) from employee_data;

HiveQL-函数

文章图片
HiveQL-函数

文章图片
HiveQL-函数

文章图片
  • 让我们看一个获取员工最低工资的示例。
hive> select min(Salary) from employee_data;

HiveQL-函数

文章图片
HiveQL-函数

文章图片
HiveQL-函数

文章图片
Hive中的其他内置函数 【HiveQL-函数】以下是配置单元中其他一些常用的内置函数:-
返回类型 操作员 描述
INT length(str) 它返回字符串的长度。
STRING reverse(str) 它以相反的顺序返回字符串。
STRING concat(str1, str2, … ) 它返回两个或多个字符串的串联。
STRING substr(str, start_index) 它根据提供的起始索引从字符串中返回子字符串。
STRING substr(str, int start, int length) 它根据提供的起始索引和长度从字符串中返回子字符串。
STRING upper(str) 它以大写形式返回字符串。
STRING lower(str) 它以小写形式返回字符串。
STRING trim(str) 它通过删除两端的空格来返回字符串。
STRING ltrim(str) 它通过删除左侧的空格来返回字符串。
TRING rtrim(str) 它通过删除右侧的空格来返回字符串。
Hive中其他内置函数的示例
  • 让我们看一个示例, 以大写形式获取每个员工的姓名。
select Id, upper(Name) from employee_data;

HiveQL-函数

文章图片
  • 让我们看一个示例, 以小写形式获取每个员工的姓名。
select Id, lower(Name) from employee_data;

HiveQL-函数

文章图片

    推荐阅读