dse pig datetime函数

wbrvyc0a  于 2021-06-25  发布在  Pig
关注(0)|答案(1)|浏览(283)

有人能给出一个完整的例子,日期时间函数包括'注册'罐?我一直在尝试运行currenttime()和todate(),但没有成功。我在classpath中有一个piggybank jar,并注册了相同的。但它总是说函数必须在使用前定义。我读了这个问题,在Pig的日期时间比较之前。

fbcarpbf

fbcarpbf1#

datetime函数可以很容易地使用本机pig实现,您无需使用piggybank jar。
例子:
在本例中,我将从输入文件中读取日期集,获取当前日期时间并计算上一个日期和当前日期之间的总天数
输入文件

2014-10-12T10:20:47
2014-08-12T10:20:47
2014-07-12T10:20:47

Pig手稿:

A = LOAD 'input.txt' AS (mydate:chararray);
B = FOREACH A GENERATE ToDate(mydate) AS prevDate,CurrentTime() AS currentDate,DaysBetween(CurrentTime(),ToDate(mydate)) AS diffDays;
DUMP B;

输出:

(2014-10-12T10:20:47.000+05:30, 2014-12-12T10:39:15.455+05:30, 61)
(2014-08-12T10:20:47.000+05:30, 2014-12-12T10:39:15.455+05:30, 122)
(2014-07-12T10:20:47.000+05:30, 2014-12-12T10:39:15.455+05:30, 153)

你可以参考我以前文章中的几个例子
人类可读的字符串日期转换为日期使用Pig?
在Pig体内储存日期和时间
如何使用pig将utc时间转换为ist

相关问题