クエリに小さな変更が必要です。2014 年 6 月 1 日を確認すると、最初の週 = 2 と表示されます。以下のクエリを使用して確認してください。2017 年 1 月 1 日にも同じケースが適用されます
select to_date('06/01/2014','mm/dd/yyyy') curr_day, next_day(trunc(to_date('06/01/2014','mm/dd/yyyy'),'mm')-8 , 'sun') prev_week, trunc( (to_date('06/01/2014','mm/dd/yyyy')-next_day(trunc(to_date('06/01/2014','mm/dd/yyyy')) ),'mm')-8, 'sun'))/7 )+1 "週" デュアルから;
正しいクエリは次のとおりです。
select to_date('06/01/2014','mm/dd/yyyy') curr_day, next_day(trunc(to_date('06/01/2014','mm/dd/yyyy'),'mm')-7 , 'sun') prev_week, trunc( (to_date('06/01/2014','mm/dd/yyyy')-next_day(trunc(to_date('06/01/2014','mm/dd/yyyy')) ),'mm')-7, 'sun'))/7 )+1 "週" デュアルから;