hive里面case when用法
时间: 2023-10-23 13:48:43 浏览: 178
CASE WHEN语句是Hive中的条件语句,用于根据一组条件表达式中的选择来计算结果。
基本语法如下:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
例如:
SELECT
CASE
WHEN sales > 1000 THEN 'High'
WHEN sales > 500 THEN 'Medium'
ELSE 'Low'
END AS sales_category
FROM
sales_table;
该语句将根据销售表中的销售金额,将销售分为High、Medium、Low三个等级,并将结果作为sales_category列输出。
相关问题
hive中case when用法
在Hive中,CASE WHEN语句用于根据条件执行不同的操作。它的基本语法如下:
```
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
```
其中,condition1、condition2等是条件表达式,result1、result2等是对应条件表达式为真时的结果。ELSE子句是可选的,用于指定所有条件表达式都不为真时的默认结果。
例如,以下查询将根据salary列的值返回不同的结果:
```
SELECT name,
CASE WHEN salary < 5000 THEN 'Low'
WHEN salary >= 5000 AND salary < 10000 THEN 'Medium'
ELSE 'High'
END AS salary_level
FROM employee;
```
hive case when用法
Hive中的CASE WHEN语句用于根据条件执行不同的操作。它的基本语法如下:
```
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
```
在这个语法中,可以有多个WHEN子句,每个子句都包含一个条件和一个结果。Hive会按顺序逐个检查条件,如果某个条件为真,则返回对应的结果。如果没有任何条件为真,则返回ELSE子句中的结果。下面是一个示例:
```sql
SELECT name,
CASE WHEN age < 18 THEN '未成年'
WHEN age >= 18 AND age < 40 THEN '青年'
WHEN age >= 40 AND age < 60 THEN '中年'
ELSE '老年'
END AS age_group
FROM users;
```
在这个示例中,根据用户的年龄将其分为不同的年龄组。如果年龄小于18,则归为"未成年",如果年龄在18到40之间,则归为"青年",如果年龄在40到60之间,则归为"中年",否则归为"老年"。
希望对你有所帮助!如果还有其他问题,请随时提问。
阅读全文