我们的要求是在条件运算符或case语句中将char数组数据类型与整数数据类型匹配,这也与整数数据类型中的o / p匹配,并且我尝试匹配两种数据类型并以整数形式得到答案。
A = LOAD 'DATA' USING PigStorage(',') AS (id:int,Name:char array);
B = FOREACH A GENERATE (A.Name is NULL ? 'NO NAME' : A.Name);
dump B;
我收到此错误1050:BinCond
的输入类型不受支持答案 0 :(得分:1)
试试这个:
A = LOAD 'DATA' USING PigStorage(',') AS (id:int, name:chararray);
B = FOREACH A GENERATE id as id, (name is null ? 'no name' : name) as name;
dump B;
答案 1 :(得分:0)
您可以使用强制转换。请仔细阅读以下指南 的 http://pig.apache.org/docs/r0.10.0/basic.html#cast 强>
A = LOAD' DATA'使用PigStorage(',')AS(id:int,Name:char array); 转储A; (,tetst32m)
B = FOREACH A GENERATE((chararray)A.id为NULL?' CHECK':A.id); 转储B; (CHECK)
希望这会有所帮助!!