현재 재고와 입출고를 관리하는 테이블을 만들었습니다.
PRODUCT_WAVE 는 입출고를 저장하는 테이블이고
PRODUCT_SKU는 현재의 총재고를 저장합니다.
PRODUCT_SKU_BACK이 당일의 재고를 복사해서 저장하는 테이블 입니다.
여기서 PRODUCT_SKU에 있는 현재의 총재고를 당일 오후에 다른 테이블로 저장을 하고 싶습니다.
설명드리자면
4월 18일 날짜로 최종 재고가 변경되었으면 4월 18일 날짜로 전체 재고를 저장하고
다음 날 19일이면 19일 최종 날짜로 저장하여서 당일의 재고를 조회할수 있게 하고 싶습니다.
여기서 문제는 총 재고가 그날 그날 모두 변경되는 것이 아니고
A,B,C의 품목이 있는데
4월 15일에 A와 B의 품목의 재고가 변경되었고 18일에 C의 재고가 변경되면
총재고 테이블의 재고 변경 날짜는 15일 18일로 저장이 됩니다.
하지만 이것을 저장하는 테이블로 옮길때는 18일로 날짜를 가져와서 저장을 해야하는데요
전체 테이블을 INSERT 문으로 저장하는 것은 알겠는데
날짜만 오늘 날짜로 해서 복사하는 쿼리를 모르겠습니다.
요것좀 부탁드리겠습니다.ㅠㅠ
Comment 7
-
catchv
2013.04.22 10:40
-
불타는불쥐[김경진]
2013.04.22 11:06
히히^^
-
loverainjh
2013.04.23 15:52
감사합니다. ^^
-
건우아빠
2013.04.22 11:50
PRODUCT_SKU을 이용해서 작업시에는 시점에 따라 문제의 소지가 있을듯 합니다.
PRODUCT_WAVE(내역)를 이용해서 일자별 재고를 만드시는 방법도 생각해 보실 필요는 있습니다.
-
loverainjh
2013.04.23 15:55
새로 변경된 재고와 기존 재고를 통합하여 일자별 재고를 만든다는 말씀이시죠??
그러면 WAVE테이블이 업데이트 되면 업데이트가 없는 재고까지 모두 가져와 복사하여 저장하는 되는 걸까요??
-
건우아빠
2013.04.23 19:14
업데이트된 재고만 해당일자와 해당일자이후 데이터만 업데이트 하시면 되죠...
2013년 4월 01일자 A상품이 5 -> 15로 변경이 되었다면
update 재고
set 재고량 = 재고량 + ( 15 - 5 )
where 일자 >= '2013년 4월 01일'
일자별로 모든 상품의 재고를 마감 개념으로 작성 하실지...
아니면 유동된 상품만 관리 하실지에 따라 방법이 달라지구요...
마감 개념일때는 마감작업이 필요하고 그 이후 쿼리는 마감테이블의 일자로만 검색하면 되니까. 편하구요..
마감 개념이 아닌 유동 상품에 대한 재고만 입력도도록 하시면 쿼리들이 전일 재고 를 가저오는 루틴이 되어야 하구요...
필요에 따라서는 재고 테이ㅡㄹ에 재고만이 아닌 입출고의 일자별 집계를 같이 넣으시는것도 방법이구요..
-
loverainjh
2013.04.24 17:36
아.. 심도 있는 조언 감사합니다.^^ 효율적인 방법을 연구해봐야겠습니다.
INSERT INTO PRODUCT_SKU_BACK
SELECT CONVERT(VARCHAR(8), GETDATE(), 112), *
FROM PRODUCT_SKU
이렇게 저장하시면 될 것 같은데요.
총재고의 내용은 그대로 저장하는 것이 나중에 추적을 하는데 도움이 되실겁니다.
(재고 변경 날짜도 그대로 저장하는 것이 좋겠죠.)
-- catchv