那么我如何通过以下输入从 Pig 获得此输出。我应该使用哪些命令
输入:
10/3/2013 1200
10/4/2013 0000
预期输出:
Monday Morning
Tuesday Evening
最佳答案
将字段拆分为 2 个字段,然后使用 ToDate 获取当天的名称。对于晚上和早上,您可以检查值并分配。假设您与 1 个字段有关系
B = FOREACH A GENERATE STRSPLIT((chararray)A.$0,' ',2);
C = FOREACH B GENERATE ToString(ToDate(B.$0,'MM/dd/yyyy'), 'E'),(CASE B.$1
WHEN '1200' THEN 'Morning'
WHEN '0000' THEN 'Evening'
ELSE '' END
)
关于azure - 将日期转换为周日名称和一天的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46855700/