Hive综合应用案例——用户学历查询

第一关 查询一个用户从出生到现在的总天数

sql 复制代码
---------- 禁止修改 ----------
drop database if exists mydb cascade;
---------- 禁止修改 ----------


---------- begin ----------
---创建mydb数据库
CREATE DATABASE mydb;

---使用mydb数据库
USE mydb;

---创建表usertab
CREATE TABLE usertab (
    id INT, 
    sex STRING,
    time STRING,
    education STRING,
    occupation STRING,
    income STRING,
    area STRING,
    desired_area STRING,
    city_countryside STRING 
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ',';


---导入数据:/root/data.txt
LOAD DATA LOCAL INPATH '/root/data.txt' INTO TABLE usertab;


---查询每一个用户从出生到现在的总天数
SELECT 
    id,
    DATEDIFF('2019-06-10', TO_DATE(REPLACE(time, '/', '-'))) AS days_since_birth
FROM usertab;


---------- end ----------

第二关 同一个地区相同的教育程度的最高收入

sql 复制代码
---------- 禁止修改 ----------
drop database if exists mydb cascade;
---------- 禁止修改 ----------


---------- begin ----------
---创建mydb数据库
CREATE DATABASE mydb;

---使用mydb数据库
USE mydb;

---创建表usertab1
CREATE TABLE usertab1 (
    id INT, 
    sex STRING,
    time STRING,
    education STRING,
    occupation STRING,
    income INT,
    area STRING,
    desired_area STRING,
    city_countryside STRING 
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ',';

---导入数据:/root/data1.txt
LOAD DATA LOCAL INPATH '/root/data1.txt' INTO TABLE usertab1;

--同一个地区相同的教育程度的最高收入
SELECT 
    area, 
    education, 
    MAX(income) AS max_income
FROM usertab1
GROUP BY area, education
ORDER BY area, 
         CASE education 
             WHEN '专科' THEN 1
             WHEN '本科' THEN 2
             WHEN '硕士' THEN 3
             ELSE 4
         END;

---------- end ----------

第三关 统计各级学历所占总人数百分比

sql 复制代码
---------- 禁止修改 ----------
drop database if exists mydb cascade;
set hive.mapred.mode=nonstrict;
---------- 禁止修改 ----------
 
 
---------- begin ----------
----创建mydb数据库
CREATE DATABASE mydb;
 
---使用mydb数据库
USE mydb;
 
---创建表user
CREATE TABLE usertab2 (
    id INT, 
    sex STRING,
    time STRING,
    education STRING,
    occupation STRING,
    income STRING,
    area STRING,
    desired_area STRING,
    city_countryside STRING 
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ',';
 
---导入数据:/root/data.txt
LOAD DATA LOCAL INPATH '/root/data.txt' INTO TABLE usertab2;
 
--查询
SELECT 
    CONCAT(ROUND(COUNT(*) * 100.0 / SUM(COUNT(*)) OVER(), 2), '%') AS percentage,
    education
FROM usertab2
GROUP BY education
ORDER BY education;
---------- end ---------- 
相关推荐
Q264336502313 小时前
【有源码】基于XGBoost的安卓应用市场数据分析与评分预测系统-面向应用市场的安卓App评分回归预测方法研究
大数据·hadoop·数据挖掘·数据分析·回归·spark·毕业设计
IT毕设梦工厂13 小时前
计算机毕业设计选题推荐:基于大数据的培训机构信息分析与可视化|毕业设计选题|计算机毕设|选题推荐|毕设指导|项目定制|源码|高质量项目
大数据·hadoop·mysql·数据挖掘·数据分析·spark·课程设计
IT毕设梦工厂1 天前
计算机毕业设计选题推荐:基于大数据的杭州亚运会社交媒体互动数据可视化分析|毕业设计选题|计算机毕设|选题推荐|毕设指导|项目定制|源码|高质量项目
大数据·hadoop·信息可视化·数据挖掘·数据分析·课程设计·数据分析数据可视化
CarIise2 天前
Spring Boot整合MyBatis与文件上传:从分层架构到文件上传下载实战
数据仓库·hive·hadoop
计算机源码社2 天前
【27届大数据毕设】基于Spark的TikTok短视频属性分享与互动比率可视化分析系统 基于机器学习的TikTok短视频认证属性与互动效能关联分析
大数据·hadoop·python·机器学习·spark·毕业设计·课程设计
ha_lydms2 天前
MaxCompute中加密与解密函数
大数据·数据库·数据仓库·hadoop·dataworks·maxcompute·odps
Q26433650233 天前
【有源码】基于Spark的电商客户细分与盈利洞察分析系统-面向精准营销的电商客户细分模型构建与盈利能力可视化研究
大数据·hadoop·分布式·数据挖掘·数据分析·spark·毕业设计
计算机源码社3 天前
【27届大数据毕设】基于Spark的AI艺术创作者价值评估与市场趋势预测研究 基于Python与Spark的AI生成艺术受众画像及异常热度识别可视化平台
大数据·人工智能·hadoop·python·spark·毕业设计·课程设计
千桐科技3 天前
数据中台 ETL 编排实践:基于 qData 开源版实现数据接入、转换与调度执行
数据仓库·开源·etl
ha_lydms3 天前
MaxCompute中窗口函数
大数据·hadoop·阿里云·云计算·dataworks·maxcompute·odps