hive中为什么①可以执行,而②报错呢


select * from A t1
where t1.data_dt in (select max(data_dt) from B)

select * from A t1
where t1.data_dt = (select max(data_dt) from B)

加一个LIMIT 1就不报错了

SELECT * FROM A t1
WHERE t1.data_dt = (SELECT max(data_dt) FROM B LIMIT 1)

要么就join 要么就in 就没用过 = ,话说无论条件是多条 还是一条 不都得用in吗 = 真的可以用吗?