hive left join on关联后用in条件过滤问题

当left 或 inner join 关联条件 需要查另外一个表中字段,则可以使用下面的方法。

下面语法是错误写法,运行不会通过。

sql 复制代码
select t1.* from t1 
left join t2 on t1.acct_no = t2.acct_no
and t1.code in (select type1 from tt)

下面是正确的实现思路,提前在主表中,做好打标字段处理。

sql 复制代码
select t1.* 
from (
select 
*,
case when tt.type1 is not null then 1 else 0 end as flag
from t1
left join tt
on code = type1
 )t1
left join t2 on t1.acct_no = t2.acct_no
and flag = 1
相关推荐
tumeng07119 小时前
HDFS的架构优势与基本操作
hadoop·hdfs·架构
蓝眸少年CY10 小时前
Hive - 函数、压缩与优化
数据仓库·hive·hadoop
仗剑_走天涯11 小时前
Hadoop 安装
大数据·hadoop·分布式
sunxunyong14 小时前
HDFS nnsdy重新配置启动
大数据·hadoop·hdfs
bukeyiwanshui14 小时前
Hadoop环境搭建
大数据·hadoop·分布式
Jianghong Jian14 小时前
HDFS常用的JAVA API
大数据·hadoop·hdfs
2501_9333295515 小时前
品牌公关的底层重构:Infoseek舆情系统如何用AI中台破解“按键伤企”难题
数据仓库·人工智能·重构·数据库开发
迈巴赫车主17 小时前
大数据:Hadoop(MapReduce)
大数据·hadoop·mapreduce
jasnet_u18 小时前
CentOS上搭建hadoop-3.3.6集群(3节点)
hadoop·centos
hashiqimiya1 天前
windows的hadoop集群环境直接配
大数据·hadoop·分布式