我想创建一个具有动态参数集的视图。例如
set x=2;
create view y as select * from k where id=${hiveconf:x}
现在正在设置x=4;
视图以x=4
值
所以,我希望创建一次视图,并使用基于x
的不同值填充答案 0 :(得分:0)
如果您只想创建一次视图,可以使用' IF NOT EXISTS' 和' ALTER '声明从下次填充新X值的视图
set x=2;
CREATE VIEW IF NOT EXISTS Y as select * from k where id=${hiveconf:x};
ALTER VIEW Y as select * from k where id=${hiveconf:x};
我想,这种方法的唯一一个小缺点是,第一次相同的操作完成两次(创建和更改),从x的下一个值开始,应该没问题。