我正在学习PIG,并有以下声明:
> jan = LOAD 'hdfs:/201001hourlyx.txt USING PigStorage(',');
> feb = LOAD 'hdfs:/201002hourlyx.txt USING PigStorage(',');
> month_quad = UNION jan,feb;
> STORE month_quad INTO 'hdfs:/month_quad';
> SPLIT month_quad INTO split_jan IF (SUBSTRING(data, 4, 6) == '01');
我在SPLIT上收到以下错误
错误org.apache.pig.tools.grunt.GRUNT - ERROR 1200&lt; <第5栏第67栏>语法错误,意外符号在&#39;:&#39;
有人对什么是语法错误有建议吗?
答案 0 :(得分:2)
在猪拉丁语中,SPLIT
无法使用单一条件。 SPLIT旨在将关系划分为两个或更多关系。
<强>语法:强>
SPLIT alias INTO alias IF expression, alias IF expression [, alias IF expression …];
使用SPLIT运算符需要至少两个表达式,而您的语句只包含一个,Pig期望更多。
在语句中添加额外的IF
子句或使用其FILTER
等效语句。
split_jan = FILTER month_quad by (SUBSTRING(data, 4, 6) == '01');