Datetime 在Pig中解析自定义日期时间
我有以下字符串Datetime 在Pig中解析自定义日期时间,datetime,hadoop,apache-pig,Datetime,Hadoop,Apache Pig,我有以下字符串“2014-12-15 18:20:48”,但当我解析为datetime时: A = LOAD 'input.txt' AS (mydate:chararray); B = FOREACH A GENERATE ToDate(mydate) as datetime; 我收到这个错误:“2014-12-15 18:20:48”在“18:20:48”处格式不正确。 或者,当我指定格式ToDate(mydate,'yyyyy-MM-dd HH:MM:ss')日期时间转换为“2014-1
“2014-12-15 18:20:48”
,但当我解析为datetime时:
A = LOAD 'input.txt' AS (mydate:chararray);
B = FOREACH A GENERATE ToDate(mydate) as datetime;
我收到这个错误:“2014-12-15 18:20:48”在“18:20:48”处格式不正确。
或者,当我指定格式
ToDate(mydate,'yyyyy-MM-dd HH:MM:ss')
日期时间转换为“2014-12-15T18:20:48.000Z”
而不是“2014-12-15 18:20:48”
。我如何解决这个问题,给我键入datetime?“2014-12-15 18:20:48”如果我们将字符串传递给ToDate函数,字符串应该是iosstring格式(参考文献[1])
ToDate(字符串)
在第一种情况下,输入字符串不是iosstring格式(缺少T分隔符,表示时间元素的开始)。如果输入字符串为
iosstring格式(参考文献[1]),它可以工作
在第二种情况下,您正在调用ToDate的重载方法:
ToDate(用户字符串,格式)
所有ToDate方法的返回类型为DateTime对象
如果要以字符串形式获取日期,并且需要以任何其他格式进行进一步处理,则必须在ToDate()方法的基础上使用ToString()方法才能在
所需格式
参考文献: