SQL题:使用hive查询各类型专利top 10申请人,以及对应的专利申请数
一、题目以及介绍
题目介绍:
1、表名:t_patent_detail (专利明细表)
2、表字段:专利号(patent_id)、专利名称(patent_name)、专利类型(patent_type)、申请时间(aplly_date)、授权时间(authorize_date)、申请人(apply_users)
3、说明:同一个专利,可以有1到多个申请人,多人之间按分号隔开。本表记录数约1万条。例如:
问题:请写出hive查询语句,各类型专利top 10申请人,以及对应的专利申请数
二、解答
1、创建表
create table t_patent_detail(patent_id string,patent_name string,patent_type string,aplly_date string,authorize_date string,apply_users string
);
INSERT INTO t_patent_detail (patent_id, patent_name, patent_type, aplly_date, authorize_date, apply_users)
VALUES
('CN201821413799.7', '一种用于合金板棒材的往复式感应加热设备', '发明创造', '2018-08-30', '2019-08-09', '朱春野'),
('CN201911153500.8', '转化DNA回收率的检测方法及引物', '发明创造', '2019-11-22', '2020-01-10', '陶启长;韦东'),
('CN202011144174.7', '一种经修饰荧光探针及其应用', '发明创造', '2020-10-23', '2020-11-20', '陶启长;韦东;余明伟'),
('CN201920792416.X', '适用于中型桌面仪器的隔离装置', '实用新型', '2019-05-29', '2020-04-17', '许亦琳;余明伟;杨华'),
('CN201920973176.3', '一种高性价离心管冻存盒', '实用新型', '2019-06-26', '2020-04-17', '许亦琳;余明伟;邬剑星;王敏生'),
('CN202110256789.4', '一种新型环保材料的制备方法', '发明创造', '2021-03-09', '2021-12-15', '李明'),
('CN202220345678.X', '便捷式电子设备支架', '实用新型', '2022-02-18', '2022-08-22', '张华'),
('CN202211123456.7', '智能物流配送系统及方法', '发明创造', '2022-09-16', '2023-02-28', '王强;赵晓'),
('CN202320456789.2', '多功能办公文具收纳盒', '实用新型', '2023-03-20', '2023-10-18', '孙悦;刘敏'),
('CN202310567890.1', '高效能源转换装置', '发明创造', '2023-04-12', '2023-11-09', '吴涛;周琳'),
('CN202410123456.8', '人工智能辅助教学方法', '发明创造', '2024-02-05', '2024-07-12', '郑宇;林悦'),
('CN202420234567.9', '可折叠户外遮阳伞', '实用新型', '2024-01-18', '2024-06-20', '陈晨;杨阳'),
('CN202120678901.2', '新型保温杯结构', '实用新型', '2021-04-06', '2021-10-25', '刘辉;张峰'),
('CN202210789012.3', '大数据分析处理平台', '发明创造', '2022-07-05', '2022-12-30', '马丽;王鹏'),
('CN202320890123.4', '创意灯具设计', '实用新型', '2023-06-15', '2023-12-08', '赵丹;李华'),
('CN202110345678.5', '一种新型太阳能电池技术', '发明创造', '2021-03-30', '2021-11-18', '王力'),
('CN202220456789.X', '便携式空气净化器', '实用新型', '2022-03-15', '2022-09-25', '陈雪'),
('CN202211234567.8', '智能医疗诊断系统', '发明创造', '2022-10-12', '2023-03-20', '刘阳;张辉'),
('CN202320567890.3', '可调节电脑桌', '实用新型', '2023-04-05', '2023-11-12', '李丽;王浩'),
('CN202310678901.4', '高效农业灌溉方法', '发明创造', '2023-05-10', '2023-12-15', '赵刚;孙强'),
('CN202410234567.9', '虚拟现实交互技术', '发明创造', '2024-03-08', '2024-08-20', '周明;吴俊'),
('CN202420345678.0', '防水运动手表', '实用新型', '2024-02-12', '2024-07-25', '林晓;郑凯'),
('CN202120789012.5', '新型雨伞设计', '实用新型', '2021-04-28', '2021-11-05', '杨波;刘悦'),
('CN202210890123.6', '区块链数据安全技术', '发明创造', '2022-07-25', '2022-12-12', '马宁;赵亮'),
('CN202320901234.7', '创意家居装饰品', '实用新型', '2023-07-02', '2023-12-20', '孙琳;李阳'),
('CN202411167890.1', '新型合金材料制备工艺', '发明创造', '2024-10-05', '2025-01-10', '朱春野;陶启长'),
('CN202420278901.X', '便捷式电子秤设计', '实用新型', '2024-02-20', '2024-08-05', '许亦琳;余明伟'),
('CN202411289012.2', '智能数据分析方法', '发明创造', '2024-11-12', '2025-02-25', '韦东;余明伟'),
('CN202420390123.X', '创意手机支架', '实用新型', '2024-03-18', '2024-09-20', '杨华;王敏生'),
('CN202411390124.3', '高效能源转化技术', '发明创造', '2024-11-25', '2025-03-15', '邬剑星;陶启长'),
('CN202420490125.4', '可折叠收纳袋', '实用新型', '2024-04-12', '2024-10-25', '刘敏;许亦琳'),
('CN202411490126.5', '智能物流管理系统', '发明创造', '2024-12-02', '2025-04-10', '王强;韦东'),
('CN202420590127.6', '多功能钥匙扣设计', '实用新型', '2024-05-08', '2024-11-15', '赵晓;余明伟');
2、具体步骤及代码
①先将申请人字段炸裂
②计算不同类型各个申请人的申请专利数
③对不同类型各个申请人按照申请专利数进行排序
④筛选各类型专利top 10申请人,以及对应的专利申请数
with t as (-- 先将申请人字段炸裂select patent_id,patent_name,patent_type,namefrom t_patent_detail lateral view explode(split(apply_users,';')) mydb as name
) ,t1 as (-- 计算不同类型各个申请人的申请专利数select distinct patent_type,name,count(*) over(partition by patent_type,name) num from t
) ,t2 as (-- 对不同类型各个申请人按照申请专利数进行排序select patent_type,name,num,dense_rank() over (partition by patent_type order by num desc ) sx from t1
) -- 筛选各类型专利top 10申请人,以及对应的专利申请数
select patent_type `专利类型`,name `申请人`,num `专利数`,sx `专利排名` from t2 where sx<=10;
相关文章:

SQL题:使用hive查询各类型专利top 10申请人,以及对应的专利申请数
一、题目以及介绍 题目介绍: 1、表名:t_patent_detail (专利明细表) 2、表字段:专利号(patent_id)、专利名称(patent_name)、专利类型(patent_type)、申请时间(aplly_date)、授权时间(authorize_date)、申请人(apply_…...

使用sealos部署的集群在部署metrics-server时日志x509
1、下载文件并进行部署 wget https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml2、进行部署 kubectl apply -f components.yaml3、发现问题 pod容器已经启动但是健康检查没有通过 kubectl get pod -n kube-system metrics-server…...

WPF怎么通过RestSharp向后端发请求
1.下载RestSharpNuGet包 2.请求类和响应类 public class ApiRequest {/// <summary>/// 请求地址/// </summary>public string Route { get; set; }/// <summary>/// 请求方式/// </summary>public Method Method { get; set; }/// <summary>//…...
promise的用法以及注意事项,看了这篇你就会了
一,为什么要使用promise,ta能解决那些问题? Promise 是异步编程的一种解决方案: 从语法上讲,Promise是一个对象,从它可以获取异步操作的消息;从本意上讲,它是承诺,承诺它过一段时间…...

vue3如何使用pinia设置全局状态,附常见面试题
1. stores/index.ts 文件 在 index.ts 中创建 store 实例并封装了注册逻辑,这样可以方便地将整个 Pinia 实例注册到 Vue 应用中。代码如下: import type { App } from vue import { createPinia } from piniaconst store createPinia()// 全局注册 st…...

lerna+umi ‘max‘ 不是内部或外部命令,也不是可运行的程序
lerna不管version7还是老版都报 $ max setup max 不是内部或外部命令,也不是可运行的程序 或批处理文件。 error Command failed with exit code 1. 这点问题是因为lerna没编译完成; 解决: 首先我们在lerna packages 里用cli 安装umi;然后…...

美格智能5G车规级通信模组: 5G+C-V2X连接汽车通信未来十年
自2019年5G牌照发放开始,经过五年发展,我国5G在基础设施建设、用户规模、创新应用等方面均取得了显著成绩,5G网络建设也即将从基础的大范围覆盖向各产业融合的全场景应用转变。工业和信息化部数据显示,5G行业应用已融入76个国民经…...

「C/C++」C/C++ 指针篇 之 指针运算
✨博客主页何曾参静谧的博客📌文章专栏「C/C」C/C程序设计📚全部专栏「VS」Visual Studio「C/C」C/C程序设计「UG/NX」BlockUI集合「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「PK」Parasoli…...

计算机网络网络层笔记
互联网提供的两种服务 1.虚电路服务 2.数据报服务 需要记住的是现在只用第二种也就是数据报服务 网际协议IP 物理层的中断系统:转发器(hub) 链路层的中断系统:交换机 网络层的中断系统:路由器 网络层以上:网关 如上图所示,网关是用来访问其他的网段的一个接口,网关的地…...

长亭那个检测能力超强的 WAF,出免费版啦
告诉你们一个震撼人心的消息,那个检测能力超强的 WAF——长亭雷池,他推出免费社区版啦,体验地址见文末。 八年前我刚从学校毕业,在腾讯做安全研究,看到宇森在 BlackHat 上演讲的议题 《永别了,SQL 注入》 …...
rabbitMQ RabbitTemplate 发送消息
消息发送确认机制 消息发送确认机制:消息由producer发送后,确认其是否到达broker,又是否被exchange转发至对应queue的机制 该机制分为两部分:producer---broker,exchange---queue 前者的实现依靠ConfirmCallback机制…...
本系列是《10万字208道Java经典面试题总结(附答案)》的2024修订版。
公众号 后端学习指南 本系列是《10万字208道Java经典面试题总结(附答案)》的2024修订版。 1、说说跨平台性 我们希望编写好的代码和程序,最好可以在任意平台和环境下运行,而不需要根据不同的平台,编写不同的代码。 比如,我编写的一个博客管理系统,我希望它可以在windo…...

C语言文件基础概念的理解(一)
文件基础概念 为什么有文件? 我们写的程序的数据是存储在电脑的内存中,如果程序退出,内存回收,数据就丢失 了,等再次运⾏程序,是看不到上次程序的数据的,如果要将数据进⾏持久化的保存…...

C++ lambda 匿名函数
看了明仕强老师的课程,C匿名函数也可以很简单 下面请看示例代码: /* lambda表达式学习,测试主函数 */#include <iostream>using namespace std;int main() {printf("Lambda test Demo:\n");//值捕获,值捕获的时候不能修…...

基于python的简单web服务器示例
安装flask flask 简介:是一个用Python编写的Web应用程序框架。 它由 Armin Ronacher 开发,他领导一个名为Pocco的国际Python爱好者团队。 Flask基于Werkzeug WSGI工具包和Jinja2模板引擎。两者都是Pocco项目 新建项目 创建好的效果 pip list 检索 安装…...

02- 模块化编程-006 ADC0808数码显示对比
1、ADC0808 芯片介绍 ADC0808是一款集成的CMOS设备,包含8位模拟至数字转换器、8通道多路复用器和与微处理器兼容的控制逻辑。8位A/D转换器采用逐次逼近作为转换技术。转换器特点包括高阻抗斩波稳定比较器、256R电压分压器、模拟开关树和逐次逼近寄存器。8通道多路复…...

又发现了Mac妙控鼠标的新使用方法
我一直是不爱用妙控鼠标的,因为用起来怪怪的,但是今天发现BettreAndBetter支持妙控鼠标的修改,于是就找出了闲置了许久的妙控鼠标试了一下 优化后的妙控鼠标使用起来就没有任何不适应的地方了,三指按下模拟中键,而且还…...

Webserver(4.6)poll和epoll
目录 pollclient.cpoll.c epollepoll.cclient.c epoll的两种工作模式水平触发边沿触发 poll poll是对select的一个改进 select的缺点在于每次都需要将fd集合从用户态拷贝到内核态,开销很大。每次调用select都需要在内核遍历传递进来的所有fd,这个开销也…...
LVGL 与 QT
LVGL 与 QT LVGL 适用于嵌入式、资源受限设备,尤其是在需要高效图形渲染和小型显示屏的场景下非常合适。它具有轻量级、模块化的特点,适用于内存和计算能力有限的硬件。 Qt 是一个功能强大的跨平台框架,适合开发桌面应用以及较为复杂的嵌入式…...

如何选择最适合的项目管理软件?2024年大厂首选7款工具盘点
选择最适合的项目管理软件对于提升团队效率、优化工作流程至关重要。2024年,各大厂在项目管理上逐渐趋向于使用更加智能化、集成化和协作性的工具。以下是如何选择最适合的项目管理软件,并对2024年大厂首选工具进行盘点。 选择适合的项目管理软件的关键…...

无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版
7种色调职场工作汇报PPT,橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版:职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
uniapp 字符包含的相关方法
在uniapp中,如果你想检查一个字符串是否包含另一个子字符串,你可以使用JavaScript中的includes()方法或者indexOf()方法。这两种方法都可以达到目的,但它们在处理方式和返回值上有所不同。 使用includes()方法 includes()方法用于判断一个字…...

解读《网络安全法》最新修订,把握网络安全新趋势
《网络安全法》自2017年施行以来,在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂,网络攻击、数据泄露等事件频发,现行法律已难以完全适应新的风险挑战。 2025年3月28日,国家网信办会同相关部门起草了《网络安全…...

华为OD机试-最短木板长度-二分法(A卷,100分)
此题是一个最大化最小值的典型例题, 因为搜索范围是有界的,上界最大木板长度补充的全部木料长度,下界最小木板长度; 即left0,right10^6; 我们可以设置一个候选值x(mid),将木板的长度全部都补充到x,如果成功…...

Chrome 浏览器前端与客户端双向通信实战
Chrome 前端(即页面 JS / Web UI)与客户端(C 后端)的交互机制,是 Chromium 架构中非常核心的一环。下面我将按常见场景,从通道、流程、技术栈几个角度做一套完整的分析,特别适合你这种在分析和改…...

MyBatis中关于缓存的理解
MyBatis缓存 MyBatis系统当中默认定义两级缓存:一级缓存、二级缓存 默认情况下,只有一级缓存开启(sqlSession级别的缓存)二级缓存需要手动开启配置,需要局域namespace级别的缓存 一级缓存(本地缓存&#…...
基于鸿蒙(HarmonyOS5)的打车小程序
1. 开发环境准备 安装DevEco Studio (鸿蒙官方IDE)配置HarmonyOS SDK申请开发者账号和必要的API密钥 2. 项目结构设计 ├── entry │ ├── src │ │ ├── main │ │ │ ├── ets │ │ │ │ ├── pages │ │ │ │ │ ├── H…...

《信号与系统》第 6 章 信号与系统的时域和频域特性
目录 6.0 引言 6.1 傅里叶变换的模和相位表示 6.2 线性时不变系统频率响应的模和相位表示 6.2.1 线性与非线性相位 6.2.2 群时延 6.2.3 对数模和相位图 6.3 理想频率选择性滤波器的时域特性 6.4 非理想滤波器的时域和频域特性讨论 6.5 一阶与二阶连续时间系统 6.5.1 …...