美文网首页
hive中所有join连接

hive中所有join连接

作者: felix_feng | 来源:发表于2016-08-24 14:25 被阅读314次

内连接:inner join

--join优化:在进行join的时候,大表放在最后面

--但是使用/*+streamtable(大表名称)*/来标记大表,那么大表放在什么位置都行了

select /*+streamtable(s)*/ s.ymd,d.dividend

from stocks s inner join dividends d on s.ymd=d.ymd and s.symbol=d.symbol

where s.symbol=’aapl’

外连接:left outer join,right outer join,full outer join

把外连接(outer join)中where语句中的过滤条件,放在on语句是无效的。不过对于内连接有效。

左半开连接:left semi-join(hive不支持右半开连接)

左半开连接(left semi-join)只会返回左边表的记录,前提是其记录对于右边表满足on语句中的判定条件,相当于sql中的in和exists

select和where语句中都不能引用右边表的字段。

注意点:

semi-join比inner join更高效

hive不支持右半开连接.

map端join:map-side join (使用桶的情况下)

map-side join:hive可以在map端执行连接过程(对于在join时有一个是小表的情况)

使用map-side join,需要配置下:

(1)hive0.7版本之前,需要加/*+ mapjoin(表名) */

select /*+ mapjoin(d) */ s.ymd,d.dividend from stocks s join dividends d

on s.ymd=d.ymd and s.symbol=d.symbol

where s.symbol=’AAPL

(2)hive0.7版本开始,设置hive.auto.convert.join=true

hive.auto.convert.join=true

hive.mapjoin.smalltable.filsize=25000000    --使用这个优化的小表的大小(单位:字节)--注意:右外连接和全外连接不支持这个优化

备注:

(1). hive的join语句,只支持等值连接。

(2).注:pig提供的交叉生成功能支持“非等值连接”.

(3).hive目前不支持在join的on子句中使用or。

相关文章

  • hive中所有join连接

    内连接:inner join --join优化:在进行join的时候,大表放在最后面 --但是使用/*+strea...

  • Hive笔记5-join原理和机制

    hive中join原理与机制 笼统的说,Hive中的Join可分为Common Join(Reduce阶段完成jo...

  • Hive 关联

    Hive Join特殊点 1.标准SQL是支持对连接关键词进行非等值连接的,但是在hive中不支持,同时也不支持在...

  • Sql中left join、right join和inner j

    left join(左连接)返回左表中的所有记录和右表中连接字段相等的记录 right join(右连接)返回右表...

  • 数据库

    left join :左连接,返回左表中所有的记录以及右表中连接字段相等的记录。 right join :右连接,...

  • 【Hive】Hive Join 介绍

    [TOC] 一、Join Hive 中的 Join 只支持等值 Join,也就是说 Join on 中的 on 里...

  • SQL 的join, left join, right join

    left join :左连接,返回左表中所有的记录以及右表中连接字段相等的记录.right join :右连接,返...

  • Hive SQL 相关

    1.Hive 连接查询JOIN2.hive 导入数据的方式3.hadoop streaming内存超限解决方案4....

  • SQL inner join和left join on

    SQL中的查询连接有 inner join(内连接),left join(左连接),right join(右连接)...

  • left join,right join,inner join,

    sql中的连接查询有inner join(内连接)、left join(左连接)、right join(右连接)、...

网友评论

      本文标题:hive中所有join连接

      本文链接:https://www.haomeiwen.com/subject/jonnsttx.html