database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 29534 게시물 읽기
No. 29534
3개월간 움직이지 않는재고 총 갯수 구하기
작성자
김동명
작성일
2010-02-03 23:24
조회수
6,961

어디서 부터 설명을 드려야 할지 모르겠습니다.

먼제 bm이란 테이블이 이 있습니다

이테이블에는 바코드 수량 날자 입고인지 출고인지 선택하는 필드가 있습니다

e_barcode,e_count,e_date,e_sort(매입은 0 매출은1) 이런형식 입니다

일단 재고를 구하는 쿼리는

select  ifnull(sum(case when e_sort='0' then e_count end),'0')-ifnull(sum(case when e_sort='1' then e_count end),'0') as count from bm group by e_barcode    이렇게  해서 재고 수량을 구합니다.

그리고 마지막 거래 날자를 구할려

select    e_barcode,max(e_date) as e_date   from smgolf1expenses where e_sort = '1'    group by e_barcode

마지막 판매 날자를 구해야 하기때문에 판매일자중 가장 최근값을 가져 옵니다.

제가 원하는값은 토탈 몇개가 3개월동안 팔리지 않았는지를 알고 싶습니다.

php로 구현 하자면

1.최근 3개월 동안 거래되지 않는 바코드를 가져온다

2.가져온 바코드를 와일문으로 돌려 재고 수량을 가져온다

3.php로 총 갯수를 더해서 출력 시킨다

 

이렇게 구현이 가능하지만

이럴경우 바코드가 1000 개 이상일 경우 1000번의 쿼리가 날아가는 문제점 (이건 별문제 없을것 같지만,,)

이쿼리를 union 으로 총 12개 지점의 값을 뿌려줘야 하기때문에

가능하다면 쿼리 한번으로 해결하고 싶습니다.

환경은  mysql  version: 5.0.24 입니다.
 

버젼 업글도 해야하는데 프로그램 손 놓은지 2년이 넘어서 사실 아무것도 모르겠습니다.

여러분들의 좋은 의견과 좋은 해결책을 간절히 바라고 있습니다.

날씨가 갑자기 추워집니다 다들 감기 조심하세요

 

이 글에 대한 댓글이 총 1건 있습니다.

select


ifnull(sum(case when e_sort='0' then e_count end),'0')-ifnull(sum(case when e_sort='1' then e_count end),'0') as count, bm.e_barcode


from


bm,

( select e_barcode from ( select e_barcode, max(e_date) as max_e_date from bm group by e_barcode order by null ) x where max_e_date <= date_sub( curdate(), INTERVAL 3 MONTH ) ) y


where bm.e_barcode = y.e_barcode

group by bm.e_barcode;

 

원하시는 결과가 나오는지 확인해보시기 바랍니다.

 

박현우(lqez)님이 2010-02-11 03:05에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
29537VIEW 테이블 SELECT만 할 수 있는 권한의 USER를 생성할 수 있나요? [2]
서광호
2010-02-08
6475
29536쿼리 에러가 나오는데요 에러좀 잡아주심감사할게요^^'; [1]
김정
2010-02-07
5931
29535멀쩡히 존재하는데 mysqldump시에 에러라면.. [2]
김주홍
2010-02-05
6490
295343개월간 움직이지 않는재고 총 갯수 구하기 [1]
김동명
2010-02-03
6961
295324.0.26 에서 dump하고, 4.0.27에서 restor시에 에러.. [2]
김주홍
2010-02-03
6628
29531특정레코드는 항상 위에 오도록 [1]
조성일
2010-02-03
6435
29530해킹으로 my-sql data 파일이 모두 삭제되었습니다.
강선도
2010-02-02
6503
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.024초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다