自学内容网 自学内容网

SQL26 计算25岁以上和以下的用户数量

描述

题目:现在运营想要将用户划分为25岁以下和25岁及以上两个年龄段,分别查看这两个年龄段用户数量

本题注意:age为null 也记为 25岁以下

示例:user_profile

iddevice_idgenderageuniversitygpaactive_days_within_30question_cntanswer_cnt
12138male21北京大学3.47212
23214male复旦大学415525
36543female20北京大学3.212330
42315female23浙江大学3.6512
55432male25山东大学3.8201570
62131male28山东大学3.315713
74321male26复旦大学3.69652

根据示例,你的查询应返回以下结果:

age_cutnumber
25岁以下4
25岁及以上3

题解

(1)用if函数的写法。

1

2

3

SELECT IF(age>=25,"25岁及以上","25岁以下") AS age_cut,count(*) AS number

FROM user_profile

GROUP BY age_cut;

(2)case的写法。

1

2

3

4

5

6

7

select

    (case

        when age>=25 then '25岁及以上'

        else '25岁以下' end) as age_cut,

    count(*) as number

from user_profile

group by age_cut

两个as,还有记得count是GROUP BY之后计数的。


原文地址:https://blog.csdn.net/qq_61454522/article/details/136434149

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!