group by 里面用case when的写法
时间: 2024-11-25 08:11:55 浏览: 4
case when和sum case when 写法及拼接字段
在Hive SQL中,`GROUP BY`语句经常与`CASE WHEN`一起使用,用于对分组后的数据进行条件过滤和聚合。`CASE WHEN`允许你根据特定条件返回不同的值,然后在`GROUP BY`中基于这些计算结果进行汇总。
例如,假设你想统计每个员工的工资等级(根据基本工资),可以这样做:
```sql
SELECT
employee_id,
CASE
WHEN salary BETWEEN 5000 AND 10000 THEN '低薪'
WHEN salary BETWEEN 10001 AND 20000 THEN '中薪'
ELSE '高薪'
END AS wage_level,
COUNT(*) as total_records
FROM employees
GROUP BY employee_id, wage_level;
```
在这个例子中,`CASE WHEN`判断了工资范围,然后将员工分为三个等级,并在每个工资等级下计数。`GROUP BY`按照`employee_id`和`wage_level`进行分组。
阅读全文