方法1:
case when weekofyear(to_date(t1.deal_time)) < 10 and month(to_date(t1.deal_time)) > 11 then (year(to_date(t1.deal_time))+1)*100+weekofyear(to_date(t1.deal_time))
when weekofyear(to_date(t1.deal_time)) > 10 and month(to_date(t1.deal_time)) < 2 then (year(to_date(t1.deal_time))-1)*100+weekofyear(to_date(t1.deal_time))
else year(to_date(t1.deal_time))*100+weekofyear(to_date(t1.deal_time))
end as deal_week
方法2:
year(date_sub(next_day(date_sub(t1.deal_time,1),'MO'),4))*100+weekofyear(date_sub(t1.deal_time,1)) deal_week