Pig ToDate铸造错误



我有一个日期字段,我试图通过'ToDate'日期是这样的

2015-03-28@18:21:18.
ToDate(REPLACE(REPLACE(Date_Time, '@', ' '),'.',''),'yyyy-MM-dd HH:mm:ss')

工作终止并给我这个错误;后端错误:无效格式:"

我已经有了处理NULL值的过滤器,以及空白的SIZE> 0。

ToDate函数的返回类型为DateTime对象。您不需要替换@,。带有"(空格)的字符。

Ref: http://pig.apache.org/docs/r0.12.0/func.html#to-date,详细信息

输入:a.csv

 2015-03-28@18:21:18.

猪脚本:

  A = LOAD 'a.csv' AS (dateValue:chararray);
  B = FOREACH A GENERATE ToDate(dateValue,'yyyy-MM-dd@HH:mm:ss.');
  DUMP B; 
输出:

    (2015-03-28T18:21:18.000-07:00)

我们还有一个重载的ToDate函数,可以在其中指定时区。

例如:指定时区为GMT

  B = FOREACH A GENERATE ToDate(dateValue,'yyyy-MM-dd@HH:mm:ss.','GMT');
  DUMP B;
输出2:

 (2015-03-28T18:21:18.000Z) 

相关内容

  • 没有找到相关文章

最新更新