最近在统计人群特征数据时,需要将用户年龄分组来计数,mysql 里的 case when 可以直接实现的 具体sql语句如下
SELECT
age,
count( * ) AS cnt
FROM
(
SELECT
CASE
WHEN info_t1 <= 20 THEN '20'
WHEN info_t1 <= 30 AND info_t1 >= 21 THEN '21-30'
WHEN info_t1 <= 40 AND info_t1 >= 31 THEN '31-40'
WHEN info_t1 <= 50 AND info_t1 >= 41 THEN '41-50'
WHEN info_t1 <= 60 AND info_t1 >= 51 THEN '51-60'
WHEN info_t1 >= 61 THEN '61'
END AS age
FROM
`user_age`
) AS a
GROUP BY
age
结果如下图: