Apache pig 使用Pig从日期中提取日期、月份和时间

Apache pig 使用Pig从日期中提取日期、月份和时间,apache-pig,Apache Pig,输入格式:周一,09/20/10 01:04下午 必须提取一天中的天、月、时间。 我知道内置函数GetDay,GetMonth,e.t.c 但是我在使用它时遇到了以下错误 无法推断org.apache.pig.b的匹配函数 uiltin.GetMonth作为多个或没有一个适合。请使用 显式转换 甚至尝试了GetMonth(ToDate(date))…但没有任何用处简单使用ToDate()假定日期字符串为ISO格式,而您的日期字符串不是ISO格式。您需要为函数提供一个描述日期格式的格式字符串。有关

输入格式:周一,09/20/10 01:04下午

必须提取一天中的天、月、时间。 我知道内置函数
GetDay
GetMonth
,e.t.c

但是我在使用它时遇到了以下错误

无法推断org.apache.pig.b的匹配函数
uiltin.GetMonth作为多个或没有一个适合。请使用 显式转换

甚至尝试了
GetMonth(ToDate(date))…
但没有任何用处

简单使用ToDate()假定日期字符串为ISO格式,而您的日期字符串不是ISO格式。您需要为函数提供一个描述日期格式的格式字符串。有关详细信息,请参阅

差不多

ToDate(date, 'E, M/d/Y K:m a')

应该可以工作。

谢谢,这提供了解决此问题的方法,但我仍然收到错误,错误为:错误1066:无法打开别名B的迭代器。后端错误:无效格式:“日期”。我将浏览链接中指定的不同格式。我的输入(周一,09/20/10 01:04 PM)与您指定的格式完全相同donno,为什么不接受并告知无效的格式