我想把一年换成一周( 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日。
我做错什么了?
1条答案
按热度按时间cgvd09ve1#
2017年第44周为10月30日至11月5日。
在第一种情况下,11月2日从10月30日到11月5日,你看到的是44周。
在第二种情况下,你看到的是一周的开始日,这就是你要寻找的。