hive的in not in left outer join
2014-10-14 17:52
465 查看
in查询
如果要查询当天登陆的注册用户,需要用in查询,hive sql如下:select login.uid from login left outer join regusers on login.uid=regusers.uid where regusers.uid is not null
如果login表和regusers表按天分区,字段是dt,那么查询2013年1月1号当天登陆的注册用户,hive sql如下:
select login.uid from login day_login left outer join (select uid from regusers where dt='20130101') day_regusers on day_login.uid=day_regusers.uid where day_login.dt='20130101' and day_regusers.uid is not null
not in查询
如果要查询当天登陆的老用户(这里假设非当天注册用户就是老用户),需要用not in查询,hive sql如下select login.uid from login left outer join regusers on login.uid=regusers.uid where regusers.uid is null;
如果login表和regusers表按天分区,字段是dt,那么查询2013年1月1号当天登陆的老用户,hive sql如下:
select login.uid from login day_login left outer join (select uid from regusers where dt='20130101') day_regusers on day_login.uid=day_regusers.uid where day_login.dt='20130101' and day_regusers.uid is null;
相关文章推荐
- hive 包含操作(left semi join)(left outer join = in)迪卡尔积
- SQL中的In VS Exists 以及 not in VS not exists VS outer join 1 Exists的用法
- hive left outer join问题
- hive各种join(leftouterjoin、join、fullouterjoin)
- Inner join and Left Outer Joins in LINQ with Entity Framework
- Avoid to use "IN", "NOT IN" in SQL statement, try to use "LEFT JOIN" instead.
- (转)Hive使用LEFT OUTER JOIN 实现not in 子句
- Hive使用LEFT OUTER JOIN 实现not in 子句
- hive 各种 join (left outer join、join、full outer join)
- ORA-01719 outer join operator (+) not allowed in operand of OR or IN
- hive left outer join 两次
- Hive的left join、left outer join和left semi join三者的区别
- hive left outer join的问题
- Hive的left join、left outer join和left semi join三者的区别
- Hive0.14在left outer join多级连接中,执行计划生成BUG记录
- hive left outer join on注意点
- SQL语句使用Left Outer join代替In删除多条记录
- NOT IN vs. NOT EXISTS vs. LEFT JOIN/ IS NULL
- Left Outer Join using + sign in Oracle 11g
- SQL Server-聚焦NOT IN VS NOT EXISTS VS LEFT JOIN...IS NULL性能分析(十八)