题解 | SQL26 计算25岁以上和以下的用户数量
这道题有两种写法,不管哪种写法都需要掌握新的知识。
第一种是case
的写法,在when
里面对条件进行判断。
select
(case
when age < 25 or age is null then '25岁以下'
when age >= 25 then '25岁及以上'
end) as age_cut, count(*) as number
from user_profile
group by age_cut;
第二种是if
的写法,条件放到括号里、
if(条件,表达式1,表达式2)
如果条件满足就执行表达式1,否则执行表达式2。
select
if(age >= 25, '25岁及以上', '25岁以下') as age_cut,
count(*) as number
from user_profile
group by age_cut;