hive中not in优化

比如:A,B两表,找到ID字段中,存在A表,但不存在B表的数据。

          A表共13w,去重后3w,

          B表共2W,且有索引

方法一

not in,易理解,效率低,时间:1.395s

select distinct A.id from A where A.id not in(select id from B)

方法二

left...join...on ,B.id isnull    时间:0.739s

select A.ID from A left join B on A.ID=B.ID where B.ID is null

方法三

效率高,

select * from  A where (select count(1) as num from B where A.ID = B.ID) = 0


转载于:https://www.cnblogs.com/starzy/p/11146056.html

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

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

相关文章

Quartz 2D编程笔记

当我们需要在一个图形上下文中构建一个路径时,我们需要调用CGContextBeginPath来标记Quartz。然后,我们调用函数CGContextMovePoint来设置每一个图形或子路径的起始点。在构建起始点后,我们可以添加直线、弧、曲线。记住如下规则:…

bitmap算法

博文转载于http://www.cnblogs.com/dyllove98/archive/2013/07/26/3217741.html概述所谓bitmap就是用一个bit位来标记某个元素对应的value,而key即是这个元素。由于采用bit为单位来存储数据,因此在可以大大的节省存储空间算法思想 32位机器上&#xff0c…

Ubuntu下如何解压缩zip,tar,tar.gz,tar.bz2文件

tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzip FileName.gz解压2:gzip -d F…

SELECT INTO 和 INSERT INTO SELECT 两种表复制语句

Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中&…

向前插入迭代器

**向前插入迭代器,是架构在具有push_front向前插入函数的序列容器(比如deque list)上的输出迭代器,可以利用*改迭代器提供的“”,“*”,“”以“*fii9;”的类似的形式完成容器元素的赋值。**其中“*”和&qu…

Discuz!X集群部署的系统方案和改造方式讨论

多WEB部署时,面临的核心问题是WEB服务器间的数据共享和同步。就数据存储的方式而言,Discuz数据包含两部分,一部分存储在MySQL数据库中(用户、帖子等文本类、结构化的数据),一部分存储为文件(附件…

static和extern的用法总结

static用法见: 1、http://www.cnblogs.com/yezhenhan/archive/2011/10/31/2229724.html2、http://www.52rd.com/Blog/Detail_RD.Blog_imjacob_5297.htmlextern用法:1、http://blog.csdn.net/cameracanon/article/details/40614192、http://blog.csdn.net…

给vmware虚拟机中的ubuntu 14.04扩大磁盘分区

一.先取得root 权限 $ su - root Password: su: Authentication failure Sorry. 这时候输入 $ sudo passwd root Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully 这时候就可以进入根目录了。 二.具体安装步骤 用VMware安装了一…

个人管理 - 书籍推荐(待读)

在《个人管理 - 书籍推荐(已读)》中推荐了一些书籍,有些人从中选取了一些,但其实还有很多好书我还没有读,为了给大家更多选择,我把我欠下的书债也贴上来。由于豆瓣还没有提供书列表的功能&#…

windows7旗舰版序列号[经测试,第一枚即可完成升级!]

windows7旗舰版序列号[经测试,第一枚即可完成升级!] 第一枚:TFP9Y-VCY3P-VVH3T-8XXCC-MF4YK 第二枚:KH2J9-PC326-T44D4-39H6V-TVPBY 第三枚:C4M9W-WPRDG-QBB3F-VM9K8-KDQ9Y 第四枚:J783Y-JKQWR-677Q8-KCXTF-BHWGC 第五…

Node.js用6行代码1个JS文件搭建一个HTTP静态服务器

2019独角兽企业重金招聘Python工程师标准>>> Node.js宣言:Node.js is a platform built on Chromes JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes i…

制作jffs2根文件系统

一、制作mkfs.jffs2工具 首先得准备好两个软件包 ,一个是MTD设备的工具包,另一个是zlib压缩包,在这我的MTD设备工具包为mtd-snapshot-20050519.tart.tar,zlib压缩包是zlib-1.2.3.tar.tar。 步骤: (1&#…

添加WCF服务引用失败解决办法

最近在玩SL4 beta,写了一个WCF的服务,在Silverlight Application中选择Add Service Reference,填入服务地址,但在生成服务引用代码(应该就是代理类)时发生错误:Error 7 Custom tool error: Fail…

javascript设计模式简单介绍之【工厂模式】

工厂模式分为两种,一种是简单工厂模式。另一种称之为工厂模式。 简单工厂模式是使用一个外部的单体或者静态方法来生成实例。 而工厂模式使用子类来决定内部成员要实现那个具体的类的实例。 工厂模式要求被具体实现的类,必须提供相同的接口。 下面我们将…

srand函数简介

srand函数是随机数发生器的初始化函数。 原型:void srand(unsigned seed); 用法:它需要提供一个种子,这个种子会对应一个随机数,如果使用相同的种子后面的rand()函数会出现一样的随机数。如:srand(1); 直接使用1来初始化种子。不过为了防止随机数每次重复…

python库--pandas--Series.str--字符串处理

目录 原数据字符大小写转换字符串拼接字符填充/插入/扩展字符串内容判断查找统计转码删减/截取分割/替换原数据 import pandas as pd a pd.Series([aSd, asd, dfd fsAsf sfs]) b pd.Series([None, asd, fgh]) indexab0aSdNone1asdasd2dfd fsAsf sfsfgh字符大小写转换 a.str.l…

linux下多线程之pthread_detach(pthread_self())

写个碰到的问题,记录下自己的技术之路点滴 pthread_detach(pthread_self()) linux线程执行和windows不同,pthread有两种状态joinable状态和unjoinable状态, 如果线程是joinable状态,当线程函数自己返回退出时或pthread_exit时都不…

Unique Binary Search Trees

使用带标记的DP int result[1000];int numTrees(int n) {result[0] 1;result[1] 1;result[2] 2;// Start typing your C/C solution below// DO NOT write int main() functionif(result[n] ! 0)return result[n];int num 0, t;for(t 1; t < n; t){num num numTrees(…

ERROR: Start Page at 'www/index.html' was not found

用Xcode 4.3.2新建了一个PhoneGap的应用&#xff0c;www目录下存在index.html文件&#xff0c;但是运行的时候&#xff0c;报错&#xff1a;ERROR: Start Page at www/index.html was not found&#xff0c;这是PhoneGap和Xcode 4还不兼容导致的。 可以右键项目名->Add File…

Linux线程-互斥锁pthread_mutex_t

在线程实际运行过程中&#xff0c;我们经常需要多个线程保持同步。这时可以用互斥锁来完成任务&#xff1b;互斥锁的使用过程中&#xff0c;主要有pthread_mutex_init&#xff0c;pthread_mutex_destory&#xff0c;pthread_mutex_lock&#xff0c;pthread_mutex_unlock这几个函…