Apache Pig ToDate UDF 时间戳格式
Apache Pig ToDate UDF Timestamp format
我在 pig 中使用 ToDate UDF 来生成日期时间字段。
输入格式为 yyyy-MM-dd。
ToDate(sch_trans_dt,'yyyy-MM-dd','Etc/GMT+7') 正在生成时间戳字段中带有冒号的值
2015-11-26T00:00:00.000-07:00
有没有办法避免时间戳中的冒号并将生成的值设为 2015-11-26T00:00:00.000-0700
参考: http://pig.apache.org/docs/r0.12.0/func.html#to-string
Return ToDate 函数的类型是 DateTime 对象(ISO 8601 格式)。要将其转换为自定义的字符串格式,我们可以使用 ToString 函数,方法是
要求的格式字符串作为第二个参数。
猪脚本:
A = LOAD 'input.csv' AS (datestring:chararray);
B = FOREACH A GENERATE ToString(ToDate(datestring,'yyyy-MM-dd','Etc/GMT+7'),'yyyy-MM-dd\'T\'hh:ss:mm.SZ');
DUMP B;
输入:
2015-11-26
输出:
(2015-11-26T12:00:00.0-0700)
我在 pig 中使用 ToDate UDF 来生成日期时间字段。 输入格式为 yyyy-MM-dd。 ToDate(sch_trans_dt,'yyyy-MM-dd','Etc/GMT+7') 正在生成时间戳字段中带有冒号的值 2015-11-26T00:00:00.000-07:00 有没有办法避免时间戳中的冒号并将生成的值设为 2015-11-26T00:00:00.000-0700
参考: http://pig.apache.org/docs/r0.12.0/func.html#to-string
Return ToDate 函数的类型是 DateTime 对象(ISO 8601 格式)。要将其转换为自定义的字符串格式,我们可以使用 ToString 函数,方法是 要求的格式字符串作为第二个参数。
猪脚本:
A = LOAD 'input.csv' AS (datestring:chararray);
B = FOREACH A GENERATE ToString(ToDate(datestring,'yyyy-MM-dd','Etc/GMT+7'),'yyyy-MM-dd\'T\'hh:ss:mm.SZ');
DUMP B;
输入:
2015-11-26
输出:
(2015-11-26T12:00:00.0-0700)