gpt4 book ai didi

hadoop - 使用参数在 Hive 中创建 View

转载 作者:可可西里 更新时间:2023-11-01 14:22:32 28 4
gpt4 key购买 nike

我有一个表,其中包含属于不同日期的行。我想创建一个 View ,它应该根据日期给我数据

CREATE VIEW newusers
AS
SELECT DISTINCT T1.uuid
FROM user_visit T1
WHERE T1.firstSeen="20140522";

我不想修复 WHERE T1.firstSeen="20140522";它可以是任何日期,如 20140525 等。有什么方法可以创建以日期作为参数的 View ?

最佳答案

不太确定使用此类变量创建 View 是否真的有效。从 Hive 1.2 开始,这就是您创建表时发生的情况。

hive> create view v_t1 as select * from t_t1 where d1="${hiveconf:v_val_dt}";
OK
Time taken: 6.222 seconds
hive> show create table v_t1;
OK
CREATE VIEW `v_t1` AS select `t_t1`.`f1`, `t_t1`.`d1` from `default`.`t_t1` where `t_t1`.`d1`="'2016-01-02'"
Time taken: 0.202 seconds, Fetched: 1 row(s)

创建 View 时,总是取静态常量值。唯一可行的方法是留在提示符之外,就像这样。

[hdfs@sandbox ~]$ hive -hiveconf v_val_dt=2016-01-01 -e 'select * from v_t1 where d1="${hiveconf:v_val_dt}";' 
Logging initialized using configuration in file:/etc/hive/2.3.2.0-2950/0/hive-log4j.properties
OK
string_1 2016-01-01
Time taken: 7.967 seconds, Fetched: 1 row(s)

[hdfs@sandbox ~]$ hive -hiveconf v_val_dt=2016-01-06 -e 'select * from v_t1 where d1="${hiveconf:v_val_dt}";'
Logging initialized using configuration in file:/etc/hive/2.3.2.0-2950/0/hive-log4j.properties
OK
string_6 2016-01-06
Time taken: 10.967 seconds, Fetched: 1 row(s)

关于hadoop - 使用参数在 Hive 中创建 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24059040/

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