题解 | #计算25岁以上和以下的用户数量#
计算25岁以上和以下的用户数量
https://www.nowcoder.com/practice/30f9f470390a4a8a8dd3b8e1f8c7a9fa
select '25岁以下' age_cut,count(device_id) from user_profile where age<25 or age is null union all select '25岁及以上' age_cut,count(device_id) from user_profile where age>=25;
第二种方法:
SELECT IF(age<25 OR age IS NULL,'25岁以下','25岁及以上') age_cut,COUNT(device_id) number
FROM user_profile
GROUP BY age_cut
第三种方法:
SELECT CASE WHEN age < 25 OR age IS NULL THEN '25岁以下'
WHEN age >= 25 THEN '25岁及以上'
END age_cut,COUNT(*)number
FROM user_profile
GROUP BY age_cut
count(具体字段):表示统计该字段下所有不为NULL的元素的总数。
count(*):统计表当中的总行数。(只要有一行数据count则++)
因为每一行记录不可能都为NULL,一行数据中有一列不为NULL,则这行数据就是有效的。
深信服公司福利 806人发布