impression lineid1 cookieid1
impression lineid1 cookieid2
impression lineid1 cookieid3
impression lineid1 cookieid4
impression lineid1 cookieid1
impression lineid2 cookieid1
impression lineid2 cookieid2
impression lineid3 cookieid1
impression lineid1 cookieid1
impression lineid3 cookieid3
impression lineid4 cookieid1
impression lineid4 cookieid2
impression lineid1 cookieid1
impression lineid4 cookieid3
impression lineid4 cookieid4
conversion cookieid1
conversion cookieid2
conversion cookieid3
conversion cookieid3
所有事件(即展示,转化)都有cookie_ids。对于“展示”中的所有活动,我想知道转化过程中发生了多少次cookie_id。
我想要这样的o / p:
line_id1 cookie_id1 count=1
line_id1 cookie_id2 count=1
line_id1 cookie_id3 count=1
line_id2 cookie_id1 count=1
line_id2 cookie_id2 count=1
如何编写hive脚本以返回预期格式的数据
答案 0 :(得分:2)
通过cookieid加入表格。过滤行左侧是展示位置,右侧行进行转换的行。按lineid和cookieid分组以获得计数。
select lineid, cookieid, count(*) as count
from table t1 join table t2
on t1.cookieid = t2.cookieid
where t1.event = 'impression'
and t2.event = 'conversion'
group by lineid, cookieid
此查询不会返回没有转化的组合。
希望有所帮助。