我承认这不是个好问题。
我的问题是,我有一个查询的以下输出,其中每一行都是这样的:
{(570349476329862),(570349476329862),(570349476329862)} {(66638102521614253348753),(66638102521614253348753),(66638102521614253348753)} 3
上述模式为:
{{(ID1:chararray)},{(ID2:chararray)},COUNT:long}
我要做的是以csv格式生成输出,以便可以轻松地将其接收到数据库中,例如,将上述内容转换为:
570349476329862,66638102521614253348753,3
我想我想把袋子弄平,但尽管这个“编译”了,它还是不能运行。
欢迎有任何想法。
谢谢
1条答案
按热度按时间hec6srdp1#
如果您的行李上有相同的数据,例如一组的结果,您可以做两件事:
在分组中包含给定的字段,这样就不需要处理它了
... B = FOREACH (GROUP A BY (COUNT, ID1, ID2)) GENERATE FLATTEN(group) AS (COUNT, ID1, ID2), ...
或使用内置函数,例如max... B = FOREACH (GROUP A BY COUNT) GENERATE FLATTEN(group) AS COUNT, MAX(A.ID1) AS ID1, MAX(A.ID2) AS ID1, ...
与建议的datafu函数相比,它的好处是可以使用内置函数来实现。我希望这有帮助