`
chiyx
  • 浏览: 275571 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Hive使用LEFT OUTER JOIN 实现not in 子句

    博客分类:
  • HIVE
阅读更多
当前HIVE 不支持 not in 中包含查询子句的语法,形如如下的HQ语句是不被支持的:

查询在key字段在a表中,但不在b表中的数据
select a.key from a where key not in(select key from b)


可以通过left outer join进行查询,(假设B表中包含另外的一个字段 key1

select a.key from a left outer join b on a.key=b.key where b.key1 is null

分享到:
评论
3 楼 idealwangqing 2012-05-20  
       
2 楼 idealwangqing 2012-05-20  
      
1 楼 idealwangqing 2012-05-20  
    

相关推荐

    经典SQL查询总结关于Exists,not Exists.in ,not in效率的说明。

    除了上述几种查询方式之外,SQL 还提供了不同的连接类型来处理不同情况下的数据关联需求,包括左连接(Left Outer Join)、右连接(Right Outer Join)以及全连接(Full Outer Join)等。 1. **左连接**(Left ...

    Hive SQL性能优化

    - 非下推:`SELECT ename, dept_name FROM E LEFT OUTER JOIN D ON E.dept_id = D.dept_id WHERE E.eid = 'HZ001'` 3. **使用SORT BY替代ORDER BY**: - **全局排序**:ORDER BY会导致所有数据进入同一个Reduce...

    hive优化(ppt)

    在Hive中,通过使用`LEFT SEMI JOIN`而非`LEFT OUTER JOIN`,可以在不包含NULL值的情况下快速找到匹配项,从而减少数据传输和处理的时间,特别是在处理大规模数据集时效果显著。 ### 存储格式和压缩 存储格式和...

    hive操作指南

    - Hive支持多种类型的JOIN操作,包括Inner Join、Left Outer Join、Right Outer Join等。 - 示例:`SELECT e.name, d.department_name FROM employees e JOIN departments d ON e.department_id = d.id;` #### 五、...

    《sql入门使用与高级使用篇》

    1. **联接(JOIN)**:通过INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN等连接多个表,合并相关数据。 2. **子查询**:在查询中嵌套查询,解决更复杂的逻辑问题。 3. **视图(VIEW)**:创建虚拟表,方便...

    Mysql详细学习笔记.rar

    笔记会详细解释各种类型的JOIN(如INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL OUTER JOIN)。 9. **聚合函数与分组**:`COUNT()`、`SUM()`、`AVG()`、`MAX()`和`MIN()`等聚合函数用于对数据进行统计,配合`GROUP BY`...

Global site tag (gtag.js) - Google Analytics