오라클 질문입니다! 날짜 주차관련 0 3 420

by 구지또 [2021.11.01 16:29:26]


주의 시작과 끝을

금~목으로 하고싶은데 어떻게 해야하는지 잘 모르겠습니다.

도움 부탁드려요.

by 마농 [2021.11.01 16:45:02]

데이터 예를 들어 주세요.
원본 대비 결과표.


by 구지또 [2021.11.01 16:57:58]
c_date qty   현재  
20211025 100   20211101 100
20211026 100      
20211027 100      
20211028 100   원하는값  
20211029 100   20211101 400
20211030 100      
20211031 100      
20211101 100      

 

현재와 원하는값에는

TO_CHAR(SYSDATE,'YYYYMMDD')로 해서 현재일로 넣어줄거에요.

즉, 현재는 월~일 = SUM(qty) 100개의 수량을 보여주고있지만

기준이 월~일 이아닌

금~목으로 변경되어야하므로 SUM(QTY) 400이 되어야해요

c_date의 데이터는 해당일에 insert됩니다.

내일이면 20211102가 추가되므로 수량이 500이 되어야합니다.


by 마농 [2021.11.01 17:47:20]
WITH t AS
(
SELECT '20211025' c_date, 100 qty FROM dual
UNION ALL SELECT '20211026', 100 FROM dual
UNION ALL SELECT '20211027', 100 FROM dual
UNION ALL SELECT '20211028', 100 FROM dual
UNION ALL SELECT '20211029', 100 FROM dual
UNION ALL SELECT '20211030', 100 FROM dual
UNION ALL SELECT '20211031', 100 FROM dual
UNION ALL SELECT '20211101', 100 FROM dual
)
SELECT *
  FROM t
 WHERE c_date >= TO_CHAR(NEXT_DAY(sysdate - 7, 6), 'yyyymmdd')
   AND c_date <= TO_CHAR(NEXT_DAY(sysdate - 1, 5), 'yyyymmdd')
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입