day02 hive 实操练习

一、某高校图书管理系统中有如下三个数据模型:

create table book(
book_id string,
`sort` string,
book_name string,
writer string,
output string,
price decimal(10,2));INSERT INTO TABLE book VALUES ('001','TP391','information_processing','author1','machinery_industry_press','20');
INSERT INTO TABLE book VALUES ('002','TP392','database','author12','science_press','15');
INSERT INTO TABLE book VALUES ('003','TP393','computer_network','author3','machinery_industry_press','29');
INSERT INTO TABLE book VALUES ('004','TP399','microcomputer_principle','author4','science_press','39');
INSERT INTO TABLE book VALUES ('005','C931','management_information_systems','author5','machinery_industry_press','40');
INSERT INTO TABLE book VALUES ('006','C932','Operations research','author6','science_press','55');-- 创建读者表 reader
create table reader (
reader_id string,
company string,
name string,
sex string,
grade string,
addr string);INSERT INTO TABLE reader VALUES ('0001','alibaba','jack','M','vp','addr1');
INSERT INTO TABLE reader VALUES ('0002','baidu','robin','M','vp','addr2');
INSERT INTO TABLE reader VALUES ('0003','tencent','tony','M','vp','addr3');
INSERT INTO TABLE reader VALUES ('0004','jingdong','jasper','M','cfo','addr4');
INSERT INTO TABLE reader VALUES ('0005','netease','zhangsan','F','ceo','addr5');
INSERT INTO TABLE reader VALUES ('0006','sohu','lisi','F','ceo','addr6');-- 创建借阅记录表 borrow_log
create table borrow_log(reader_id string,
book_id string,
borrow_date string
);INSERT INTO TABLE borrow_log VALUES ('0001','002','2019-10-14');
INSERT INTO TABLE borrow_log VALUES ('0002','001','2019-10-13');
INSERT INTO TABLE borrow_log VALUES ('0003','005','2019-09-14');
INSERT INTO TABLE borrow_log VALUES ('0004','006','2019-08-15');
INSERT INTO TABLE borrow_log VALUES ('0005','003','2019-10-10');

(1)在Hive中创建数据库 test, 并创建出如上表和插入数据;

create database test;

(2)找出姓名l 开头的读者姓名(name)和所在单位(company)

结果:
name company
lisi sohu

hive> select name, company from reader where name like 'l%';
OK
name    company
lisi    sohu

(3)查找“科学出版社(machinery_industry_press)”的所有图书名称(book_name)及单价(price),结果按单价降序排序;

结果:
book_name price
management_information_systems 40
computer_network 29
information_processing 20

select book_name, price from book where output='machinery_industry_press' order by price desc;

(4)查找价格介于10元和20元之间的图书种类(sort)出版单位(output)和单价(price),结果按出版单位(output)和单价(price)升序排序
a b c d e f g
结果:
sort output price
TP391 machinery_industry_press 20
TP392 science_press 15

select sort, output, price from book where price between 10 and 20 order by asc;

(5)查找所有借了书的读者的姓名(name)及所在单位(company)
结果:
name company
jack alibaba
robin baidu
tony tencent
jasper jingdong
zhangsan netease

select name,company from reader r join borrow_log b on r.reader_id == b.reader_id;

(6)求”科学出版社(machinery_industry_press)”图书的最高单价、最低单价、平均单价;
结果:
max_price min_price avg_price
40 20 29.666667

select max(price) max_price, min(price) min_price, avg(price) avg_price from book where output='machinery_industry_press' group by output;

(7)找出至少借阅了1本图书(大于等于1本)的读者姓名及其所在单位;
结果:
name company
jack alibaba
robin baidu
tony tencent
jasper jingdong
zhangsan netease

select name, company from reader r  join borrow_log bl ON r.reader_id = bl.reader_id  group by r.name, r.company  having count(bl.book_id) >= 1;

(8)创建一张表borrow_log_bak,并将borrow_log表的结构和数据备份到该表;

create table borrow_log_bak as select * from borrow_log;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/175404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

redis优化秒杀和消息队列

redis优化秒杀 1. 异步秒杀思路1.1 在redis存入库存和订单信息1.2 具体流程图 2. 实现2.1 总结 3. Redis的消息队列3.1 基于list实现消息队列3.2 基于PubSub实现消息队列3.3 基于stream实现消息队列3.3.1 stream的单消费模式3.3.2 stream的消费者组模式 3.4 基于stream消息队列…

XmlElement注解用在Java的列表属性上产生的效果

例如,下面的代码,XmlElement注解用在了Conditions类的conditionList属性的getter方法上,其中conditionList是一个列表类型: package com.thb;import java.util.List;import jakarta.xml.bind.annotation.XmlAttribute; import ja…

Python面经【4】

Python面经【4】 一、什么是闭包二、[列表]和(元组)的区别三、__Init__和__new__的区别四、Python里match与search的区别五、创建百万级实例如何节省内存六、18. 4G内存如何读取一个5G的数据 一、什么是闭包 闭包指的是在函数内部定义了另一个函数,并返回了这个作为…

香港服务器显示美国 IP 地址是怎么回事

香港服务器显示美国 IP,在我们选择免备案服务器时会考虑很多影响因素,其中香港服务器有着省时省力,方便速度快等优 势受到大多用户喜爱,可有的时候在选择香港服务器时发现,有的香港服务器在 IP 地址一栏会显示其它国家…

leetcode每日一题34

89.格雷编码 观察一下n不同时的格雷编码有什么特点 n1 [0,1] n2 [0,1,3,2] n3 [0,1,3,2,6,7,5,4] …… 可以看到nk时,编码数量是nk-1的数量的一倍 同时nk编码的前半部分和nk-1一模一样 nk编码的最后一位是2k-1 后半部分的编码是其对应的前半部分的对称的位置的数字…

如何使用OpenCV转换图像并创建视频,实现Ken Burns特效

一、Ken Burns特效 当使用OpenCV时,最常使用的是图像,但是我们也可以多个图像创建动画,通过引入时间轴更容易可视化。 Ken Burns特效这是一种以电影制片人肯伯恩斯 (Ken Burns) 命名的平移和缩放技术,Ken Burns 效果不是在屏幕上显示大型静态照片,而是裁剪细节,然后平移图…

vue3(四)-基础入门之 fetch 与 axios

一、fetch 1、axios和fetch的区别 Axios 和 Fetch 都是 JavaScript 中用于发送 HTTP 请求的 API,它们的主要区别在以下方面: 1.Axios 支持更广泛的浏览器和 Node.js 版本,而 Fetch 只能在较新的浏览器中使用,或需要使用 polyfi…

[动态规划] 回文子串

回文子串 题目描述 给定一个字符串,输出所有回文子串。 回文子串即从左往右输出和从右往左输出结果是一样的字符串 比如: abba cccdeedccc都是回文字符串 我们要查找的子串长度应该大于等于2 关于输入 输入是一行,即可一个字符串。长度…

vr红色教育虚拟展馆全景制作提升单位品牌形象

720全景展馆编辑平台以其独特的优势,为展览行业带来了革命性的变革。这种创新的技术应用为参展商提供了更高效、更便捷、更全面的展示解决方案,进一步提升了展览行业的水平和影响力。 一、提升展示效果,增强品牌形象 720全景展馆编辑平台通过…

使用conan包 - 工作流程

使用conan包 - 工作流程 主目录 conan Using packages1 Single configuration2 Multi configuration 本文是基于对conan官方文档Workflows的翻译而来, 更详细的信息可以去查阅conan官方文档。 This section shows how to setup your project and manage dependenci…

32 - MySQL调优之事务:高并发场景下的数据库事务调优

数据库事务是数据库系统执行过程中的一个逻辑处理单元,保证一个数据库操作要么成功,要么失败。谈到他,就不得不提 ACID 属性了。数据库事务具有以下四个基本属性:原子性(Atomicity)、一致性(Con…

Windows全系列 本地密码暴力破解

首先 咱们要准备两个工具: 第一个是 pwdump-master 第二个是 saminside_softradar-com.exe这两个工具 我会一并上传 需要的同学 可以自取本文章操作思路是: 第一步 首先把我刚刚提到的两个软件 以某种手段放置于机器中 如果是真实机 就用U盘 拷贝到真实机…

基于Java SSM框架+Vue实现药品保健品购物网站项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架Vue实现药品保健品购物网站演示 摘要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 ssm药源购物网站,主要的模块包括两个用户,管理员权限:用…

OJ练习第186题——统计子串中的唯一字符

统计子串中的唯一字符 力扣链接:828. 统计子串中的唯一字符 题目描述 我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符,并返回唯一字符的个数。 例如:s “LEETCODE” ,则其中 “L”, “T”,“C”,“O”…

【Github】git安装

我们经常需要对github上的项目进行复现或者使用,git指令可以方便我们更好地实现他们。 Part 0. 准备 配置代理IP 面对问题:关于登陆github网站网速慢、下载git项目网速慢。 解决:无论是windows还是linux系统,都可以找到/etc/ho…

RK3568平台开发系列讲解(Linux系统篇)pinctrl api介绍及实验

🚀返回专栏总目录 文章目录 一、pinctrl函数介绍二、设备树案例三、驱动案例 沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍pinctrl api及其使用案例 。 一、pinctrl函数介绍 ①获取设备对应的 pinctrl…

西南科技大学数字电子技术实验一(数字信号基本参数与逻辑门电路功能测试及FPGA 实现)FPGA部分

一、 实验目的 1、掌握基于 Verilog 语言的 diamond 工具设计全流程。 2、熟悉、应用 Verilog HDL 描述数字电路。 3、掌握 Verilog HDL 的组合和时序逻辑电路的设计方法。 4、掌握“小脚丫”开发板的使用方法。 二、 实验原理 与门逻辑表达式:Y=AB 原理仿真图: 2 输入…

智慧工厂人员定位系统源码,融合位置物联网、GIS可视化等技术,实现对人员、物资精确定位管理

智慧工厂人员定位系统源码,UWB高精度定位系统源码 随着中国经济发展进入新常态,在资源和环境约束不断强化的背景下,创新驱动传统制造向智能制造转型升级,越发成为企业生存发展的关键。智能工厂作为实现智能制造的重要载体&#xf…

OpenGL之Mesa3D编译for Ubuntu20.04(三十六)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药. 更多原创,欢迎关注:Android…

Elasticsearch启动失败问题汇总

版本elasticsearch-8.11.1,解压安装完后,修改安装目录下conf/jvm.options, 默认配置如下: -Xms4g -Xmx4g 默认的配置占用内存太多了,调小一些: -Xms256m -Xmx256m由于es和jdk是一个强依赖的关系&#xff0…