我只能在Group by()中使用案例语句吗?
例如,我需要将计算结果按incom级分组。
user_id income
1 10
2 20
3 100
4 500
我想得到结果:
number_of_users income
1 <10
2 10 - 150
1 >150
我可以在查询中使用case语句,而仅在group by()中使用吗?
答案 0 :(得分:2)
您可以使用CASE
:
SELECT CASE WHEN income < 10 THEN '<10'
WHEN income <= 150 THEN '10-150'
ELSE '> 150'
END AS income, COUNT(*) AS num_of_users
FROM tab
GROUP BY CASE WHEN income < 10 THEN '<10'
WHEN income <= 150 THEN '10-150'
ELSE '> 150'
END
答案 1 :(得分:0)
@Lukasz答案的修改版本。
argparse
使用派生表