SELECT
TO_CHAR(TO_DATE('2023-07-01','yyyy-MM-dd')-(DAYOFWEEK_ISO(TO_DATE('2023-07-01','yyyy-MM-dd'))-1),'yyyyMMdd') AS firstDay,
TO_CHAR(TO_DATE('2023-07-01','yyyy-MM-dd')+7-(DAYOFWEEK_ISO(TO_DATE('2023-07-01','yyyy-MM-dd'))),'yyyyMMdd') AS lastDay,
TO_CHAR(TO_DATE('2023-07-01','yyyy-MM-dd')+8-(DAYOFWEEK_ISO(TO_DATE('2023-07-01','yyyy-MM-dd'))),'yyyyMMdd') AS nextFirstDay,
TO_CHAR(TO_DATE('2023-07-01','yyyy-MM-dd')+14-(DAYOFWEEK_ISO(TO_DATE('2023-07-01','yyyy-MM-dd'))),'yyyyMMdd') AS nextLastDay
FROM SYSIBM.DUAL
?
SELECT
TO_CHAR(CURRENT DATE+1-(DAYOFWEEK_ISO(CURRENT DATE)),'yyyyMMdd') AS firstDay,
TO_CHAR(CURRENT DATE+7-(DAYOFWEEK_ISO(CURRENT DATE)),'yyyyMMdd') AS lastDay,
TO_CHAR(CURRENT DATE+8-(DAYOFWEEK_ISO(CURRENT DATE)),'yyyyMMdd') AS nextFirstDay,
TO_CHAR(CURRENT DATE+14-(DAYOFWEEK_ISO(CURRENT DATE)),'yyyyMMdd') AS nextLastDay
FROM SYSIBM.DUAL