赞
踩
1.case用法
- -- 用法一:
- case when 条件1 then 字段取值1
- when 条件2 then 字段取值2
- when 条件3 then 字段取值3
- else 字段取值4-- 如果上述全部不满足,则执行
- end
-
- -- 用法二:
- case 字段名
- when 取值1 then 字段取值1
- when 取值2 then 字段取值2
- when 取值3 then 字段取值3
- else 字段取值4-- 如果上述全部不满足,则执行
- end
2.if用法
if(条件,取值1,取值2)--若条件满足,则取值1,否则取值2
例子:现有用户行为数据表etl_online,查找2020年12月1日-2020年12月15日文章的下发数量,下发未曝光数量,曝光未点击数量,点击数量:
- create table etl_online(
- user_id varchar(20),-- 用户id
- doc_id varchar(20),-- 文章id
- auction varchar(20),-- 用户行为
- p_day varchar(20)-- 时间
- )
- select p_day,doc_id,
- case when click>0 then '点击'
- when click<0 and rview>0 then '曝光未点击'
- when rview<0 and vview>0 then '下发未点击'
- when view<0 then '未下发'
- else '其他' end as user_action,
- count(user_id)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。