gpt4 book ai didi

where 子句中的 Hive 子查询 (Select * from table 1 where dt > (Select max(dt) from table2) )..请提出替代方案

转载 作者:行者123 更新时间:2023-12-04 18:07:19 24 4
gpt4 key购买 nike

我正在寻找类似 hive 的东西

Select * from table 1 where dt > (Select max(dt) from table2) 

显然,hive 不支持 where 子句中的子查询,而且,即使我使用连接或半连接,它也只比较 = 而不是 >(据我所知)。

有人可以建议我在配置单元中编写相同查询的替代解决方案吗?

最佳答案

select table_1.* from table_1
join (select max(dt) as max_dt from table2) t2
where table_1.dt > t2.max_dt

你是对的,你只能在连接中具有相等条件 on条款,但您​​可以在 where 中拥有任何您想要的东西条款。

通常不推荐这样做,因为没有 on子句意味着 Hive 将首先做一个完整的笛卡尔积,然后过滤,但由于连接的一侧只有一行,所以这不是问题。

关于where 子句中的 Hive 子查询 (Select * from table 1 where dt > (Select max(dt) from table2) )..请提出替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24516016/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com