hive join on 条件 与 where 条件区别
1. select * from a left join b on a.id = b.id and a.dt=20181115;2. select * from a left join b on a.id = b.id and b.dt=20181115;3. select * from a join b on a.id = b.id and a.dt=20181115;4. select * from a left join b on a.id = b.id  where a.dt=20181115;

sql1: 如果是left join 在on上写主表a的条件不会生效,全表扫描。
sql2: 如果是left join 在on上写副表b的条件会生效,但是语义与写到where 条件不同
sql3: 如果是inner join 在on上写主表a、副表b的条件都会生效
sql4: 建议这么写,大家写sql大部分的语义都是先过滤数据然后再join ,所以在不了解 join on + 条件的情况下,条件尽量别写道on 后,直接写到where厚就ok了。

posted on 2018-11-15 20:44 姜小嫌 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/jiangxiaoxian/p/9965978.html

hive join on 条件 与 where 条件区别相关推荐

  1. mysql left join中on后加条件判断和where中加条件的区别

    left join中关于where和on条件的几个知识点:1.多表left join是会生成一张临时表,并返回给用户2.where条件是针对最后生成的这张临时表进行过滤,过滤掉不符合where条件的记 ...

  2. hive 的 left semi join 讲解与left jion的区别

    一:介绍 他们都是 hive join 方式的一种,join on 属于 common join(shuffle join/reduce join), 而 left semi join 则属于 map ...

  3. on条件与where条件的区别

    on条件与where条件的区别 数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户. 在使用left jion时,on和where条件的区别如下: 1.  ...

  4. SQL中on条件与where条件的区别

    SQL中on条件与where条件的区别 数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户. 在使用left jion时,on和where条件的区别如下: ...

  5. 条件自信息跟互信息区别简述

    简述 (PS部分,可以是拓展部分,可不看) 条件自信息: 条件自信息,本质上还是自信息.定义上,明确指出,是在已知事件 y = b j y = b_j y=bj​发生的条件下, x = a i x = ...

  6. 一文搞懂两表关联时left join 、 on 以及where条件不同写法对结果的影响--文末有结论

    一文搞懂两表关联时left join 与 on 以及where条件不同写法对结果的影响–文末有结论 1.数据准备(建议使用本地mysql) a表: b表: 建表语句: Create EXTERNaL ...

  7. Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别

    Pig 一种操作hadoop的轻量级脚本语言,最初又雅虎公司推出,不过现在正在走下坡路了.当初雅虎自己慢慢退出pig的维护之后将它开源贡献到开源社区由所有爱好者来维护.不过现在还是有些公司在用,不过我 ...

  8. Oracle的left join中on和where的区别

    Oracle的left join中on和where的区别 数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户. 在使用left jion时,on和wher ...

  9. Hive基本操作,DDL操作(创建表,修改表,显示命令),DML操作(Load Insert Select),Hive Join,Hive Shell参数(内置运算符、内置函数)等

    1.  Hive基本操作 1.1DDL操作 1.1.1    创建表 建表语法 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_nam ...

最新文章

  1. 【MATLAB】数据分析之多项式及其函数
  2. Mysql数据库权限问题
  3. django时间格式化加时区控制
  4. Javascript实现导航锚点滚动效果实例
  5. Gstreamer中一些gst-launch常用命令
  6. poj 1061 青蛙的约会
  7. 单片机c语言计数器测速,基于51单片机的光电编码器测速.doc
  8. 服务端增加WCF服务全局异常处理机制
  9. 实体框架(Entity Framework)简介
  10. mac android 找不到设备管理器,Android Studio找不到连接设备解决方案
  11. 使用TensorFlow在Transformers 上生成字幕的注意机制的实现
  12. fanuc换刀宏程序详解_FANUC宏程序使用举例
  13. php ucfirst,Arale源码解析(3)——Base模块和Aspect模块
  14. 微信公众账号分为哪几类?区别是什么
  15. 图深度学习 Deep Learning on Graph
  16. 数据结构之常见排序算法的适用范围
  17. PY_GD_1 Python使用print()函数时输出不含多余空格的数据
  18. [转清华]清华,曾经是多少莘莘学子梦想中的学府……张琳
  19. 清华大学计算机学院2021拟录取,清华大学、上海交通大学公示拟录取2021级研究生名单了...
  20. 泛微校招群面经历(一日游?)

热门文章

  1. C#中,将16进制转换为有符号的10进制的方法(支持带0x标志,支持任意字符串)
  2. 网络编程之 keepalive(zz)
  3. bzoj 2821:作诗 分块
  4. SSL 1105——【USACO 2.1】顺序的分数(递归+二分)
  5. 下载文件根据浏览器判断文件名,解决兼容性问题
  6. 【leetcode】Minimum Path Sum
  7. zoj3802:easy 2048 again(状压dp)
  8. RTSP客户端模拟器(TCP方式,Python实现)
  9. 如何遍历某数据库中的每一个表的总记录数
  10. 客户端控件Javascript验证类