摘要:
说明 聊到 hive,就少不了灵活的开窗函数,今天介绍下开窗函数中 over 子句内部经常会用到的 rows 和 range 的用法; 数据准备 create table temp_id_0116 ( id int ) stored as orc tblproperties ("orc.compre 阅读全文
摘要:
需求描述 有如下数据 create table temp_user_log ( uid int comment '用户id', artical_id int comment '视频id', in_time string comment '进入时间', out_time string comment 阅读全文
摘要:
数据库规范化是使用一系列范式设计数据库(通常是关系型数据库)的过程,其目的是减少数据冗余,增强数据的一致性。这一系列范式就是指在设计关系型数据库时,需要遵从的不同的规范。关系型数据库的范式一共有六种,分别是第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范 阅读全文
摘要:
需求描述 从用户登录明细表(user_login_detail)中首次登录算作当天新增,第二天也登录了算作一日留存 结果如下: first_login (注册时间) register (新增用户数) retention <decimal(16,2)> (留存率) 2021-09-21 1 0.00 阅读全文
摘要:
需求描述 商家要求每个商品每个月需要售卖出一定的销售总额假设1号商品销售总额大于21000,2号商品销售总额大于10000,其余商品没有要求请写出SQL从订单详情表中(order_detail)查询连续两个月销售总额大于等于任务总额的商品 结果如下: sku_id (商品id) 1 需要用到的表: 阅读全文
摘要:
需求描述 从登录明细表(user_login_detail)中查询每个用户两个登录日期(以login_ts为准)之间的最大的空档期。统计最大空档期时,用户最后一次登录至今的空档也要考虑在内,假设今天为2021-10-10。 期望结果如下: user_id (用户id) max_diff (最大空档期 阅读全文
摘要:
需求描述 从订单明细表(order_detail)中统计每天商品1和商品2销量(件数)的差值(商品1销量-商品2销量) 期望结果如下: create_date diff 2020-10-08 -24 2021-09-27 2 2021-09-30 9 2021-10-01 -10 2021-10-0 阅读全文
摘要:
需求描述 查询截止每天的最近3天内的订单金额总和以及订单金额日平均值,保留两位小数,四舍五入。 期望结果如下: create_date (日期) total_3d <decimal(16,2)> (最近3日订单金额总和) avg_3d <decimal(16,2)> (最近3日订单金额日平均值) 2 阅读全文
摘要:
需求描述 现需要请向所有用户推荐其朋友收藏但是用户自己未收藏的商品,请从好友关系表(friendship_info)和收藏表(favor_info)中查询出应向哪位用户推荐哪些商品。 期望结果如下: user_id (用户id) sku_id (应向该用户推荐的商品id) 101 2 101 4 1 阅读全文
摘要:
需求描述 从用户登录明细表(user_login_detail)和订单信息表(order_info)中查询每个用户的注册日期(首次登录日期)、总登录次数以及其在2021年的登录次数、订单数和订单总额。 期望结果如下: user_id (用户id) register_date (注册日期) total 阅读全文