当前位置: 首页 > news >正文

Hive课后练习题

10.5 课后练习

10.5.1 第一题

我们有如下的用户访问数据

userId visitDate visitCount
u01 2017/1/21 5
u02 2017/1/23 6
u03 2017/1/22 8
u04 2017/1/20 3
u01 2017/1/23 6
u01 2017/2/21 8
u02 2017/1/23 6
u01 2017/2/22 4

要求使用sql统计出每个用户的累计访问次数,如下表所示

用户id 月份 小计 累计
u01 2027-01 11 11
u01 2027-02 12 23
u02 2027-01 12 12
u03 2027-01 8 8
u04 2027-01 3 3
  1. 创建表

    create table action(user_id string,visit_date string,visit_count int
    )
    row format delimited fields terminated by '\t';
    
  2. 加载数据

    [atguigu@hadoop102 data]$ vim action.txt
    ---
    u01	2017/1/21	5
    u02	2017/1/23	6
    u03	2017/1/22	8
    u04	2017/1/20	3
    u01	2017/1/23	6
    u01	2017/2/21	8
    u02	2017/1/23	6
    u01	2017/2/22	4
    ---
    
    load data local inpath '/opt/module/hive-3.1.2/data/action.txt' into table action;
    
  3. 查询语句SQL作答

    select 
    user_id, 
    year_month, 
    visit_subtotal, 
    sum(visit_subtotal) over(partition by user_id order by visit_subtotal desc) visit_total
    from 
    (select user_id, year_month, sum(visit_count) as visit_subtotal
    from (select user_id, date_format(regexp_replace(visit_date, '/', '-'), 'yyyy-MM') year_month, visit_count
    from action) t
    group by user_id, year_month) t2;
    

    在这里插入图片描述

10.5.2 第二题

有50W个京东店铺,每个顾客访问任何一个店铺的任何一个商品时都会产生一条访问日志,访问日志存储的表名为visit,访问的客户id为 user_id,被访问的店铺名称为shop,请统计

① 每个店铺的UV(访客数)

② 每个店铺访问次数top3的访客信息。输出店铺名称、访客id、访客次数

  1. 建表

    create table visit(user_id string, shop string)
    row format delimited fields terminated by '\t';
    
  2. 加载数据

http://www.dtcms.com/a/307817.html

相关文章:

  • Docker 初学者需要了解的几个知识点 (七):php.ini
  • ode with me是idea中用来干嘛的插件
  • MVS相机+YOLO检测方法
  • 【14】大恒相机SDK C#开发 ——Bitmap.UnlockBits()什么意思?有什么用?bmpData.Scan0;什么意思?有什么用?
  • 行业要闻|正式落地!新思科技宣布完成对Ansys的收购
  • 是德科技的BenchVue和纳米软件的ATECLOUD有哪些区别?
  • 1 机器学习概述 (第一天2025.7.31)
  • 【龙泽科技】汽车维护与底盘拆装检修仿真教学软件【风光580】
  • 非阿贝尔编织(Non-Abelian Braiding)
  • 量子测量的物理场景与理论
  • Union Application
  • 基于深度学习的医学图像分析:使用BERT实现医学文本分类
  • 从“救火”到“先知”:润建曲尺运维大模型如何重构网络运维价值链
  • Linux核心转储(Core Dump)原理、配置与调试实践
  • Bug报错集
  • Qt 常用控件 - 3
  • 基于PyTorch利用CNN实现MNIST的手写数字识别
  • RAG:让AI更聪明的“外接大脑“ | AI小知识
  • MacroDroid Pro 功能强大的任务自动化和配置应用程序
  • PHP 与 MySQL 详解实战入门(1)
  • 发票闪印 v3.9.17 免费电子PDF发票批量打印工具绿色版
  • css 不错的按钮动画
  • 22.(vue3.x+vite) 组件动态导入 (懒加载defineAsyncComponent)
  • 超简单的跳动爱心
  • 数据库的隔离级别和mysql的隔离级别
  • Go语言实战:创建一个简单的 HTTP 服务器
  • uni-app用css编写族谱树家谱树
  • Docker 初学者需要了解的几个知识点 (六):docker-compose.yml (ThinkPHP)
  • Cursor结合Playwright MCP Server支持自动化
  • ACID原子性:确保数据库操作的可靠性