Hive的条件判断

if

--类似三目运算符 : 条件表达式 ? true的结果 : false的结果
IF(条件表达式, true的结果, false的结果)

nvl

-- 返回两个表达式中的非NULL值,只能有两个参数
nvl(exp1,exp2)

coalesce

--返回参数中的第一个非 NULL 值,可以有多个参数
COALESCE(value1,value2,)  

case when

用法1

--用于判断expression是固定值
CASE [ expression ]
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionn THEN resultn
ELSE result 
END

-- 示例:
select id,name, 
case age
when 12 then "12a"
when 13 then "13a"
when 14 then "14a"
else "15a"
end as age1, 
case sex 
when 'boy' then '男'
else '女' 
end as sex1
from stu;

用法2

-- 类似java 的if else if else 写法
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionn THEN resultn
ELSE result 
END

-- 示例:
select id,name, 
case 
when age = 12 then "12a"
when age = 13 then "13a"
when age = 14 then "14a"
else "15a"
end as age1, 
case when sex = 'boy' then '男'
else '女' 
end as sex1
from stu;

相关推荐

  1. Hive条件判断

    2024-05-14 12:50:13       28 阅读
  2. Pytest断言与条件判断区别

    2024-05-14 12:50:13       26 阅读
  3. Ruby 条件判断

    2024-05-14 12:50:13       37 阅读
  4. mybatis条件判断及动态sql简单拓展

    2024-05-14 12:50:13       22 阅读
  5. Hive条件函数详细讲解

    2024-05-14 12:50:13       51 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-14 12:50:13       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-14 12:50:13       101 阅读
  3. 在Django里面运行非项目文件

    2024-05-14 12:50:13       82 阅读
  4. Python语言-面向对象

    2024-05-14 12:50:13       91 阅读

热门阅读

  1. Spring new对象时注解失效

    2024-05-14 12:50:13       36 阅读
  2. [开发] Oh My Zsh 安装pnpm插件

    2024-05-14 12:50:13       39 阅读
  3. content-type之multipart/form-data和application/json比较

    2024-05-14 12:50:13       29 阅读
  4. 2、MySQL总结

    2024-05-14 12:50:13       32 阅读
  5. Prompt提示词的技巧

    2024-05-14 12:50:13       27 阅读
  6. 删除有序数组中的重复项

    2024-05-14 12:50:13       37 阅读
  7. 从零学算法994

    2024-05-14 12:50:13       30 阅读
  8. C++|内存管理(2)

    2024-05-14 12:50:13       28 阅读