一旦我做了一个 join A by id, B by id
,我得到一个带字段的别名 A::f...
, B::f..
. 有没有办法把它投射到 A
领域?
C = join A by id, B by id;
D = filter C by B::n < 1000;
E = foreach D generate A::*;
我明白了
Unexpected character '*'
我想要的是 E
模式与 A
(即。, describe E
以及 describe A
应该打印完全相同的东西)。
我该怎么做?
2条答案
按热度按时间yyyllmsg1#
您可以使用项目范围表达式来获取其中的一部分。
不幸的是,没有办法系统地剥离
A::
前缀。如果你知道A
(假设是last
),您可以这样做:如果你只想从
B
你会的如果您真的需要应用一个特定的模式,也许您可以定义一个宏,在需要时应用这个模式,这样您就可以覆盖来自分组、连接等的任何更改。
6kkfgxo02#
加入后无法使用通用别名。但是您可以从连接结果生成特定的列。例如,
现在关系d只有id、name、addr等“a”关系列。