Hive常用函数之条件函数

我们可以通过相关的命令来获取某个函数的用法:

  • show functions;  #查询所有的自带函数
  • desc function extended case;  #获得例子+用法
  • desc function case;  #获得函数的用法

Hive常用函数之条件函数

1、判空函数NVL:

nvl(value,default_value)如果value为null,则返回default_value的值,否则返回value

举例: 如果员工奖金为null,用0表示。

hive> select comm,nvl(comm,0) from emp;

注:sal float(8)not null, ----工资;comm float(8)not null,----奖金

2、条件函数case when: 

举例:部门下所有的员工的总数,区分性别,所以我们需要一种方式,当检查到sex为男的时候,记录一下man变量为

1,当检查到sex为女的时候对women 加1

select dept_id,sum(case sex when '男' then 1 else 0 end) male_count,
sum(case sex when '女' then 1 else 0 end) female_count
from emp_sex group by dept_id;

发布了491 篇原创文章 · 获赞 435 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/lixinkuan328/article/details/104483205