:REGDATE - 20160117
SELECT :REGDATE,
TO_CHAR( TO_DATE(:REGDATE,'YYYYMMDD') ,'YYYY-IW') AS YW
, TO_CHAR( TO_DATE(:REGDATE,'YYYYMMDD') +( 1 - TO_CHAR(TO_DATE(:REGDATE,'YYYYMMDD') - 1, 'D') ), 'YYYY-MM-DD') AS START_DATE
, TO_CHAR( TO_DATE(:REGDATE,'YYYYMMDD') +( 1 + 6 - TO_CHAR(TO_DATE(:REGDATE,'YYYYMMDD') - 1, 'D') ), 'YYYY-MM-DD') AS END_DATE
FROM DUAL