hive中 join与where

HiveQL与标准SQL的区别:

陷阱1:

SELECT * 
FROM first_table t1
JION second_table t2
ON t1.id = t2.id
where t1.date = "2016-06-01"

在hive里面,没有SQL优化器,则这样些的后果是,直接将t1表与t2表全量连接,产生大量的MapReduce操作再进行过滤

正确写法:

SELECT * 
FROM (
			SELECT *
			FROM first_table
			WHERE date = "2016-06-01")t1
JOIN second_table t2
ON t1.id = t2.id;


阅读更多
个人分类: Sql
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭