1、Left join (left outer join)
join, right join ,left join
left join 返回 左表全部记录以及右表中与联结字段相等的记录
right join 返回右表全部记录以及左表中与联结字段相等的记录
inner join 返回两表中联结字段相等的记录
2、上月月末 dt=last_day(add_months(cast(current_date as string), -1))
3、PV(page view) ---页面浏览量 指页面的浏览次数,用以衡量网站用户访问的网页数量。用户没打开一个页 面便记录1次PV,多次打开同一页面则浏览量累计;
UV(unique visitor)---独立访客数 指1天内访问某站点的人数
VV(visit view)--访客的访问次数 用以记录所有访客1天内访问了多少次您的网站。当访客完成所有浏览并最终关掉该网站的所有页面时便完成了一次访问,同一访客1天内可能有多次访问行为,访问次数累计;
4、date_sub('2020-10-26',datediff('2020-10-26','2016-01-01')%7) ---取该日期所在的周五(统计周上周五至本周四)
date_add(date_sub('2020-10-26',datediff('2020-10-26','2016-01-01')%7) ,6) --取周四
count(case when to_date(min_info.col1)>=date_sub('{TX_DATE}',pmod(datediff('{TX_DATE}','2020-02-29'),7)) and to_date(min_info.col1)<='{TX_DATE}' then video_id else null end) as w_video_num, 周数据处理
5、nvl 空值转换 nvl(insu_fee,0)
6、主键、外键、索引
主键:唯一标识一条记录,不能重复,不能重复
外键: 用来和其他表关联,可以重复,可以为空,它是另外一张表的主键
索引: 没有重复值,可以有一个空值,提高查询排序的速度
7、P值:拒绝原假设的最小显著性水平,P值越大,越接受
8、explode 的使用,拆解 MAP, array,struct 数据
regexp_replace 函数,替换函数
get_json_object()函数 解析json串
later view explode
9、取连续三天有交易, 当前日期,编号,当前日期-编号 如果是同一天,那么就是连续的,count(当前日期-编号 ) >=3 连续3天
10、取top5,row_number, where 条件里关联子查询
11、取次日留存,7日留存 新用户日期,活跃用用户数日期, count(distinct case when act_date=date_add(dim_day,1) then pin else null end ),按用户关联
12、group by 与count distinct 的区别
group by 空间 速度慢
count distinct 内存 会先把这列数据 储存在内存上 速度快