关键词:CASE WHEN THEN ELSE END
数据准备
| name | dept_id | sex |
|---|---|---|
| 悟空 | A | 男 |
| 大海 | A | 男 |
| 宋宋 | B | 男 |
| 凤姐 | A | 女 |
| 婷姐 | B | 女 |
| 婷婷 | B | 女 |
需求
求出不同部门男女各多少人。结果如下:
Code
1 | A 2 1 |
创建本地emp_sex.txt,导入数据
Code
1 | [ys@hadoop102 datas]$ vim emp_sex.txt |
创建hive表并导入数据
sql
1 | create table emp_sex( |
查询数据
sql
1 | select |
- 首先注意CASE WHEN THEN ELSE END的缺一不可
- 也要注意
sum函数的用法,sum(条件)是经常会用到的方法!!!- 比如
sum(if XXX)就常在HiveSQL里面使用。 - 例如:
sum(if(dt='2020-05-27', order_count,0 )) order_count,本质其实是一样的。
- 比如






