从m/dd/yyyy到yyyy-mm-dd的pig日期转换

carvr3hs  于 2021-06-21  发布在  Pig
关注(0)|答案(2)|浏览(407)

我想比较两次约会的时间 1/22/2016 以及 2016-02-13 格式我无法想出Pig函数写这个。
我需要为此编写自定义项吗?

hmae6n7t

hmae6n7t1#

您可以按todate转换所有值,并按><==符号进行比较。例子:

R = FILTER A BY ToDate(date1, 'M/d/yyyy') <= ToDate(date2, 'YYYY-mm-dd');
6pp0gazn

6pp0gazn2#

Dump A;
1/22/2016

B = foreach A generate ToDate($0,"M/dd/yyyy");
C = foreach B {

  year = (chararray)GetYear($0);
  month = (chararray)GetMonth($0);
  day = (chararray)GetDay($0);
  generate CONCAT(CONCAT(CONCAT(year, '-'), CONCAT(month, '-')),day) as myDate;
}

Dump C;
(2016-1-22)

相关问题