请教:hive上,查询建表后,表记录数与查询记录数不同?

金乌儿 2015-07-27 05:06:44

各位好,我是做分析的,因为工作需要自己学习在我们的数据提供方所提供的ORACLE 和HIVE数据库中取数和做简单的数据探索,因此 SQL和HIVE SQL 都是自学尚未成才阶段。问题可能白痴,请勿见怪。

一、设定:
同一个数据表,在oracle上一份,在hive上一份。

二、目的:
将查询结果创建新表保存,语句如下:
CREATE TABLE dldffx_33401 AS SELECT * FROM dldffx t WHERE ORG_NO LIKE '33401%'

三、试验过程及结果:
1. HIVE 上:
1.1 用 SELECT COUNT(*) FROM dldffx_33401 得知,在创建的新表 dldffx_33401中,记录数是 8,626,398 个;
1.2 再看直接查询出来的子集:SELECT COUNT(*) FROM dldffx t WHERE ORG_NO LIKE '33401%' ,则 结果返回为 8,626,390 个;

2. 在ORACLE上,上述两种方法的结果都是 8,626,390 个。

四、问题:
要请教的是,这个HIVE上的记录数不一致可能是什么原因呢?为什么ORACLE上会是相符的呢?

非常感谢!
...全文
510 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Q446512799 2015-07-29
  • 打赏
  • 举报
回复
在dldffx 表中的数据是多少呢?难道是 8,626,398 ,oracle和hive的语句还是有点出入的,可能oracle按照条件导进去了,hive全量导进去了?

20,808

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧