gpt4 book ai didi

hadoop - Apache pig : Replace null with string

转载 作者:可可西里 更新时间:2023-11-01 15:41:26 33 4
gpt4 key购买 nike

我的数据中有很多空条目。由于后期处理,如果我可以将 null 的默认值设置为字符串“other”,那将非常有帮助。我找不到执行此操作的方法(版本 0.8.1-cdh3u4)

另外,我的 GENERATE 语句中有一些变量可能会返回 null,我需要类似于 SQL DECODE 函数的东西来获取“其他”字符串而不是 null。

例子:

tmp = FOREACH dump GENERATE site, REGEX_EXTRACT(name, '^(?:([^.]+)\\.?){1}', 1) AS project, ((ami MATCHES '.*datatype.*') ? REGEX_EXTRACT(name, '^(?:([^.]+)\\.?){5}', 1) : 'other') AS datatype, ami, duid, nbfiles, length, rnbfiles, rlength, name; 

这里:'site' 和 'datatype' 可以返回一个空字符串(这是有效的)并被解释为 null,但应该是“other”。

非常感谢。

最佳答案

所以我唯一能找到的是 ?: 三元运算符。这使得整个 pig 脚本有点冗长,但它确实有效:-)

(((ami MATCHES '.datatype.') ? REGEX_EXTRACT(name, '^(?:([^.]+)\.?){5}', 1) : 'other') IS NULL ? 'other' : ((ami MATCHES '.datatype.') ? REGEX_EXTRACT(name, '^(?:([^.]+)\.?){5}', 1) : 'other')) AS datatype

关于hadoop - Apache pig : Replace null with string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10930037/

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