Pig拉丁语yyyww

b1uwtaje  于 2021-06-24  发布在  Pig
关注(0)|答案(1)|浏览(523)

我想把一年换成一周( yyyyww )在Pig身上 yyyyMMdd 得到一周的第一次约会。这就是我正在尝试和得到奇怪的输出。

ToString(ToDate('20171102', 'yyyyMMdd'), 'yyyyww') as c1

退货 201744 . 也就是说2017年11月2日是2017年的第44周。但当我反过来做时,输出是奇怪的。

ToString(ToDate('201744', 'yyyyww'), 'yyyyMMdd')

退货 20161031 . 2017年第44周的第一天是2016年10月31日。
我做错什么了?

cgvd09ve

cgvd09ve1#

2017年第44周为10月30日至11月5日。
在第一种情况下,11月2日从10月30日到11月5日,你看到的是44周。
在第二种情况下,你看到的是一周的开始日,这就是你要寻找的。

相关问题