HiveSQL数据笔试题

题目一:计算平台的每一个用户发过多少朋友圈、获得多少点赞

已知,数据如下:

T1:10万行数据

uid(用户id) log_id(日记id)
uid1 log_id1
uid1 log_id2
uid2 log_id3

T2:1000万行数据(注:没有被点赞的日记此表不做记录)

log_id(日记id) like_uid(点赞的用户id)
log_id1 uid2
log_id1 uid3
log_id1 uid4
log_id3 uid2

需求:请用sql计算出如下结果:

uid(用户id) 发过多少日记 获得多少点赞
uid1 2 3
uid2 1 1

题目二:处理产品版本号

版本号信息存储在数据表中,每行一个版本号。

版本号命名规则符合正则表达式:(?:[1-9]\d|[1-9])(.(?:[1-9]\d|\d)){1,2}

补充说明:

产品版本号由三个部分组成

如:9.11.2

第一部分9为主版本号,为1-99之间的数字;

第二部分11为子版本号,为0-99之间的数字;

第三部分2为阶段版本号,为0-99之间的数字(可选);

请根据具体条件和问题,使用hive sql编程:

1.条件:T1表有100个版本号,找出其中最大的版本号。

举例:

T1:

v_id (版本号)
9.9.2
8.1
9.9.2
9.20
31.0.1

2.条件:T1表有1000万个版本号,给如下格式的所有版本号排序。对于相同的版本号,顺序号一致。

table_result (排序结果表) :

v_id (版本号) seq (顺序号)
31.0.1 0
9.20 1
9.9.2 2
9.9.2 2
9.0.8 4

题目三、计算用户留存

用户留存是体现平台健康程度的重要数据指标之一,请用hive sql完成如下需求

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值