我想在Hive v1.2.1中执行以下查询,其中从另一个表中查询field_3
。
select user_id, start_date, field_3 as stop_date
from some_table;
对于返回的每条记录,field_3
的值都相同。问题是它存储在另一个表中。要获得该值,我可以按如下方式获得。
select max(some_field) as stop_date
from another_table;
目前,我已对文字进行了硬编码。
select user_id, start_date, cast(cast('2017-10-19' as date) as timestamp) as stop_date
from some_table;
然而,这种方法是不可取的,因为适当的值会在一整天内发生变化。
任何解决方案都应该考虑它是否可以通过Hive SQL上下文插入到Spark中。
答案 0 :(得分:1)
您可以加入另一个表的输出..
select user_id, start_date, b.field_3 as stop_date FROM
some_table a,
( select max(some_field) as field_3
from another_table ) b;