안녕하세요, 고수님들 도움 부탁드립니다
| 10번창고 | 입고일자 | 요일 | 품목 | 입고량 |
| 2023-09-01 | 금요일 | A | 10 | |
| B | 20 | |||
| 2023-09-08 | 금요일 | B | 15 | |
| C | 10 | |||
| 2023-09-15 | 금요일 | A | 13 | |
| 2023-09-22 | 금요일 | A | 10 | |
| C | 10 | |||
| 2023-09-29 | 금요일 | A | 9 |
물품이동
기간 : 2023-09-01 ~ 2023-09-30
창고번호 : 10번
입고요일 : 금요일
이동창고번호 : 11번
이동요일 : 월요일
해당된 주에 포함된 요일로 이동을 할려고 합니다
예)
1. 2023-09-01(금) -> 해당 주의 월요일은 (2023-08-28)
2. 2023-09-08(금) -> 해당 주의 월요일(2023-09-04)..
금요일 -> 토요일, 월 -> 수 이런 조건도 들어 올수 있습니다.
오라클에서 동적으로 아래 처럼 결과 조회 쿼리 부탁드립니다
| 원 창고번호 | 원 일자 | 변경 창고번호 | 변경일자 |
| 10 | 20230901 | 11 | 20230828 |
| 10 | 20230908 | 11 | 20230904 |
| 10 | 20230915 | 11 | 20230911 |
| 10 | 20230922 | 11 | 20230918 |
| 10 | 20230929 | 11 | 20230925 |
이동 할려는 요일의 일자를 조회하는 쿼리 부탁드립니다
날짜에서 4일을 빼는 방법으로 하시면 됩니다.
다만, DBMS 종류에 따라, 컬럼의 타입에 따라 구현방법이 다릅니다.
금->월 은 -4일 인데?
금->토 는 -6일 인가요? +1일 인가요?
해당주의 요일이라는 표현을 쓰셨는데?
주의 기준은 뭔가요? (일~토) (월~일)
금->토 는 -6일 인가요? +1일 인가요?
==> +1일 입니다
주의 기준은
===> 일 ~ 토 입니다
감사합니다
WITH t AS
(
SELECT 10 no
, TO_CHAR(TO_DATE('20230801', 'yyyymmdd') + LEVEL - 1, 'yyyymmdd') dt
, ROUND(DBMS_RANDOM.VALUE(10, 90), -1) v
FROM dual
CONNECT BY LEVEL <= 99
)
SELECT no
, dt
, v
, 11 no_1
, TO_CHAR(NEXT_DAY(TRUNC(TO_DATE(dt, 'yyyymmdd'), 'd') - 1, '월'), 'yyyymmdd') dt_1
, v v_1
FROM t
WHERE no = 10
AND dt >= '20230901'
AND dt <= '20230930'
AND TO_CHAR(TO_DATE(dt, 'yyyymmdd'), 'dy') = '금'
;
매번 큰 도움 주셔서 정말 감사합니다