HIVE SQL实现通过两字段不分前后顺序去重

news2024/11/24 23:05:14

在这里插入图片描述

--数据建表
drop table if exists db.tb_name;
create table if not exists db.tb_name
( suj1 string
	,suj2 string
)
;

insert overwrite table db.tb_name
values 
("语文","数学")
,("语文","英语")
,("数学","语文")
,("物理","化学")
,("生物","物理")
,("化学","物理")
;

1.通过常规的分组排序/分组去重,该种方式去重时考虑了前后顺序,无法满足要求
1)分组排序

select * from
(
select suj1
	,suj2
	,row_number() over (partition by suj1,suj2 order by 1 desc) rn
from 
db.tb_name
) t
where rn=1
;

2)分组

select suj1,suj2
from 
hvprd_dmcp_udl.ptt_test_0718
group by suj1,suj2
;

2.分组排序是将分组前后顺序统一

select suj1,suj2 from
(
select suj1
	,suj2
	,row_number() over (partition by concat_ws(',',sort_array(split(concat(suj1,',',suj2),','))) order by 1 desc) as rn
from 
db.tb_name
) t
where rn=1
;

最终去重后输出的结果:
在这里插入图片描述

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

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

相关文章

[禁止登录]登录失败,建议升级最新版本后重试,或通过问题反馈与我们联系。(错误码:45)

token失效:[禁止登录]登录失败,建议升级最新版本后重试,或通过问题反馈与我们联系。(错误码:45。 [禁止登录]登录失败,建议升级最新版本后重试,或通过问题反馈与我们联系。 使用go-cqhttp开发QQ机器人的时候遇到的问题&#xff0c…

小白入门深度学习 | 6-5:Inception-v1(2014年)详解

1. 理论知识 GoogLeNet首次出现在2014年ILSVRC 比赛中获得冠军。这次的版本通常称其为Inception V1。Inception V1有22层深,参数量为5M。同一时期的VGGNet性能和Inception V1差不多,但是参数量也是远大于Inception V1。 Inception Module是Inception V1的核心组成单元,提出…

市面上的充电桩分类以及系统分析

摘要:智能用电小区是国家电网为了研究智能电网智能用电的先进技术如何运用于居民区,提高人民的生活水平,提高电网智能化水平以及提升用电服务质量而进行的一项尝试。电动汽车作为智能用电小区建设的一个组成部分同样也逐渐被纳入发展规划&…

聊聊传统监控与云原生监控的区别

传统监控的本质就是收集、分析和使用信息来观察一段时间内监控对象的运行进度,并且进行相应的决策管理的过程,监控侧重于观察特定指标。 但是随着云原生时代的到来,我们对监控提出了更多的要求: 通过监控了解数据趋势&#xff0c…

2023年7月杭州/郑州/深圳传统行业产品经理NPDP认证招生

产品经理国际资格认证NPDP是新产品开发方面的认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。 【认证机构】 产品开发与管理协会(PDMA)成立于1979年,是…

如何用smardaten无代码平台进行复杂逻辑编排?

目录 1、前言2、复杂逻辑编排是什么?3、服务编排-进销存(1)业务说明(2)设计说明1)数据库设计2)表单设计3)列表设计4)逻辑设计4.1 逻辑控制设计4.2 服务编排设计 4、使用体…

Redis学习(四)Redis原理:底层数据结构、网络模型、内存回收策略

文章目录 Redis底层数据结构SDS 动态字符串IntSet 整数集合Dict 字典Dict伸缩中的渐进式再哈希 ZipList 压缩列表QuickLisk 快速列表SkipList 跳表动态索引建立 RedisObject变量类型与数据结构实现StringListSetZSetHash Redis网络模型Redis是单线程还是多线程?为什…

VUE安装部署+应用

1.下载vscode 安装教程:https://blog.csdn.net/T1401026064/article/details/128692088 百度网盘:VSCodeUserSetup-x64-1.74.3.exe 提取码:8s8a 2.VUE教程 可以用!快捷输入代码框架。 教程:https://cn.vuejs.org/guid…

解决Git fatal: refusing to merge unrelated histories报错

问题描述 当在远程建立了一个仓库,并且远程的仓库已经初始化了的情况,使用 git remote add origin gitgithub.com:xxx/xxx.git命令添加远程仓库后,执行git pull,然后提示如下: 大致意思就是需要关联我们的本地和远程分支。按照…

【形心】不规则多边形形心计算方法(含面积计算)

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 不规则多边形形心计算若干方法小结 说明: 这里以凹多边形为例,方便排查所计算坐标不在多边形之外。 1. 正文 1.1 方法一 shap…

【网络编程】网络编程套接字(三)TCP网络程序

文章目录 简单的TCP网络程序一、服务器创建套接字二、服务器绑定套接字三、服务器监听四、服务器获取连接五、服务器处理请求六、对服务器进行简单测试七、客户端创建套接字八、客户端连接服务器九、客户端发起请求十、服务器客户端测试 多进程的TCP服务器一、忽略SIGCHLD信号二…

IDEA 搭建Android 开发环境

项目实战 废话不多说开始创建先第一个 Android 项目 步骤一 FILE → New → Project 步骤二-选择 Android 项目模板 选那个安卓机器人,如果没有这个选项,需要升级IDEA版本或者安装安卓插件 选择*Basic Activity* Next-下一步 步骤三-项目初始化 名称、包名、安装位置自行调整…

守护数智未来,开源网安受邀参加2023OWASP北京论坛

2023年7月14日,OWASP中国与网安加社区联合举办的“2023OWASP中国北京安全技术论坛”在北京圆满召开,开源网安受邀参加本次论坛并分享“软件供应链安全治理实践”。 本次“2023OWASP中国北京安全技术论坛”是OWASP中国北京地区年度重要活动之一&#xff…

解决ValueError: If using all scalar values, you must pass an index

使用字典创建DataFrame对象时,会报这样得错误 ValueError: If using all scalar values, you must pass an index 代码如下: 这是因为没有索引所致,所以,需要我们指定索引,来创建DataFrame对象。 模式为&#xff1a…

【C++】模板进阶—非类型模板参数、模板特化及模板的分离编译

🚀 作者简介:一名在后端领域学习,并渴望能够学有所成的追梦人。 🚁 个人主页:不 良 🔥 系列专栏:🛸C 🛹Linux 📕 学习格言:博观而约取&#xff0…

jar包发版至服务器Linux命令

maven -> clean compile install / package 使用WinSCP 或者其他软件在target下 找到jar包 传至服务器 找到原先jar包存放位置 cd /usr/local/xxx 通过线上端口号找到线程数 netstat -tunlp | grep 8080 杀死线程 kill -9 线程数 运行新jar包 nohup java -jar jar包名…

利用 jenkins 关联 Job 方式完善 RobotFramework 测试 Setup 以及 Teardown 后操作

目录 1.前言 2.Jekins 关联 Job 方式 1.前言 Jenkins是一个流行的持续集成和交付工具,它可以帮助自动化构建、测试和部署软件。与Robot Framework结合使用,可以实现更高效的测试工作流程。 在Robot Framework中,Setup和Teardown是测试用例…

文件IO_文件同步(附Linux-5.15.10内核源码分析)

目录 1.为什么要进行文件同步? 2.fsync函数介绍 2.1 fsync函数 2.2 fsync函数内核源码分析 2.3 fsync函数使用示例 3.fdatasync函数介绍 3.1 fdatasync函数 3.2 fdatasync函数内核源码分析 3.3 fdatasync函数使用示例 4.sync函数介绍 4.1 sync函数 4.2 …

第一阶段-第十一章 Python基础的综合案例(数据可视化-地图可视化)

目录 一、基础地图使用  1.学习目标  2.视觉映射器  3.本节的演示二、疫情地图-国内疫情地图  1.案例效果  2.函数的语法  3.本节的代码演示三、疫情地图-省级疫情地图  1.案例效果  2.本节的代码演示 说明:该文章是学习 黑马程序员在B站上分享的视…