[main]- ERROR 1037 Operands of Regex can be CharArray only :(Name: Regex Type: null Uid: null)

以下是pig命令操作

grunt> sztdata_sub_orignal = LOAD '/datum/szt/subway/20160601' USING PigStorage(',') AS (num:chararray,id:chararray,subid:chararray,type:long,time:chararray,sub_station_line:chararray,sub_station_name:chararray,sub_num:chararray);

grunt> sztdata_sub = FILTER sztdata_sub_orignal BY type MATCHES '21';
2017-09-04 23:45:39,369 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1037: 
<line 2, column 49> Operands of Regex can be CharArray only :(Name: Regex Type: null Uid: null)
Details at logfile: /state/partition1/home/wangsheng/pig_1504539913472.log
grunt> sztdata_sub_orignal = LOAD '/datum/szt/subway/20160601' USING PigStorage(',') AS (num:chararray,id:chararray,subid:chararray,type:chararray,time:chararray,sub_station_line:chararray,sub_station_name:chararray,sub_num:chararray);

grunt> sztdata_sub = FILTER sztdata_sub_orignal BY type MATCHES '21';


這是因爲filter過濾函數作用的值只能是char類型的 (Operands of Regex can be CharArray only ),type是long類型的

所以需要把type改成char類型的


修改之後,成功

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章