select device_id, gender,
(case when age<20 then'20岁以下' 
when age between 20 and 24 then '20-24岁'
when age>=25 then '25岁及以上'
else '其他'
end)
as age_cut
from user_profile

本来思维定势想用union all写下去,但不知道为啥和标准答案顺序有不一致,遂放弃,选择用case when,回顾下语法,

case when xx

when xx

when xx

else xx

end