美文网首页
Hive练习(一)

Hive练习(一)

作者: hipeer | 来源:发表于2018-09-22 17:48 被阅读0次

练习所使用的数据是之前创建的users表和train表中的
  1. caculate the event with thw most number of user associated
select event_id,  count(*) as ucount from train group by event_id order by ucount desc limit 1;

结果:

+------------+---------+--+
|  event_id  | ucount  |
+------------+---------+--+
| 955398943  | 242     |
+------------+---------+--+

2.how many users invied and not invied

select invited, count(distinct `user_id`) as nums from train group by invited;

结果:

+----------+--------+--+
| invited  |  nums  |
+----------+--------+--+
| 0        | 2032  |
| 1        | 313    |
+----------+--------+--+

3.how male/female got invied?(train & users)

select u.gender as gender, count(*) as nums
   from users u
 left join train t
   on u.user_id=t.user_id and t.invited=1
 group by gender 
having gender!='';

结果:

+---------+--------+--+
| gender  |  nums  |
+---------+--------+--+
| female  | 15001  |
| male    | 23440  |
+---------+--------+--+

4.create another(internal) table which contains user_id, gender, brithyear,number of events

create table temp_users as 
  select u.user_id as user_id, u.gender as gender, u.birthdyear as birthdyear, count(*) as event_nums
    from users u left join train t on u.user_id=t.user_id 
   group by u.user_id, u.gender, u.birthdyear 
   order by event_nums desc;

结果:

INFO  : Moving data to directory hdfs://sandbox-hdp.hortonworks.com:8020/temp/data/temp_users from hdfs://sandbox-hdp.hortonworks.com:8020/temp/data/.hive-staging_hive_2018-09-22_09-41-01_707_8002503432333532967-4/-ext-10001
INFO  : Table test1.temp_users stats: [numFiles=1, numRows=38209, totalSize=895460, rawDataSize=857251]

看一下temp_users表中的数据

+---------------------+--------------------+------------------------+------------------------+--+
| temp_users.user_id  | temp_users.gender  | temp_users.birthdyear  | temp_users.event_nums  |
+---------------------+--------------------+------------------------+------------------------+--+
| 2903662804          | female             | 1981                   | 91                     |
| 3514195773          | male               | 1974                   | 55                     |
| 3943175229          | female             | 1966                   | 49                     |
| 1067164735          | female             | 1990                   | 49                     |
| 3180412264          | female             | 1983                   | 48                     |
+---------------------+--------------------+------------------------+------------------------+--+

相关文章

  • Hive练习(一)

    练习所使用的数据是之前创建的users表和train表中的 caculate the event with thw...

  • 2018-08-05--08-11

    08-05配置1、sql语句练习。根据月乔的文档&sql优化,根据文档练习2、hive语句1)hive,sql连接...

  • Hive练习

    数据: 建表语句 1、输出的日期格式不一样,需进行格式化 2、计算每个用户的小计 计算累加列,开窗函数根据用户id...

  • hive学习(三):练习题——collect_set及array

    前言: 以sql为基础,利用题目进行hive的语句练习,逐步体会sql与hive的不同之处。 题目用到hive的集...

  • hive学习(二):练习题——求访问次数

    前言: 以sql为基础,利用题目进行hive的语句练习,逐步体会sql与hive的不同之处。本次练习题来源:htt...

  • Hive SQL练习

    查询全体学生的学号与姓名 查询选修了课程的学生姓名 ----hive的group by 和集合函数 查询学生的总人...

  • Hive实践练习

    创建表 查看刚刚创建的表 造测试数据 加载测试数据 由于是内部表上图红色路径中的元数据在drop表的同时也会被清除...

  • Hive练习(三)

    使用beeline连接到hive 创建users表和train表,为了方便, 创建表的hql语句单独写在一个脚本文...

  • hive sql练习

    参考 原先数据格式是这样,写了个脚本转成insert 形式

  • Hive练习(二)

    直接进入hive命令 查看所有数据库 查看当前所在数据库 切换数据库 创建数据库 删除数据库 创建简单外表 表所在...

网友评论

      本文标题:Hive练习(一)

      本文链接:https://www.haomeiwen.com/subject/wzpznftx.html