재고 쿼리문 어케 작성하면 돼죠? 정보
재고 쿼리문 어케 작성하면 돼죠?본문
에고 머리야..아무리 찾아봐도 몰겠네요.
시간이 있으면 천천히 쿼리문을 공부해서하면 되겠는데 급해서요.
******* 입고테이블(a)
코드(a1) 입고수량(a2)
a 10
b 10
a 5
b 7
이런식으로 동일코드가 매일 입고됩니다.(다른 필드는 생략)
******** 출고 테이블(b)
코드(b1) 출고수량(b2)
a 5
b 6
a 3
b 2
이런식으로 매일 출고가 일어납니다.
입고 테이블에 동일한 코드 합산내고 출고 테이블에 동일코드 합산내서 빼면 재고수량인데...
아이고 머리의 한계가 느껴집니다..........조언 부탁드려요~
시간이 있으면 천천히 쿼리문을 공부해서하면 되겠는데 급해서요.
******* 입고테이블(a)
코드(a1) 입고수량(a2)
a 10
b 10
a 5
b 7
이런식으로 동일코드가 매일 입고됩니다.(다른 필드는 생략)
******** 출고 테이블(b)
코드(b1) 출고수량(b2)
a 5
b 6
a 3
b 2
이런식으로 매일 출고가 일어납니다.
입고 테이블에 동일한 코드 합산내고 출고 테이블에 동일코드 합산내서 빼면 재고수량인데...
아이고 머리의 한계가 느껴집니다..........조언 부탁드려요~
댓글 전체

자신은없지만.. 이거 말씀하시는건가요
SELECT sum(출고수량) FROM `테이블명` group by 코드
SELECT sum(출고수량) FROM `테이블명` group by 코드

아마 쿼리문 한줄로 하시는걸 예기하시는 듯.
기본구조는 그런것 같은데요...left join문을 써야할듯 한데...ㅋ

조인해서 하면 되지 않을까요..
select ((a.a2+b.b2)-b.b2) as jaego from a,b where a.a1=b.b1
ㅡㅡ;; 함수를 사용하는 것이 빠를런지.. 잘못된거라면 바로 자삭하겠어요--;;
select ((a.a2+b.b2)-b.b2) as jaego from a,b where a.a1=b.b1
ㅡㅡ;; 함수를 사용하는 것이 빠를런지.. 잘못된거라면 바로 자삭하겠어요--;;

SELECT a.출고수량 - b.출고수량 as cnt FROM 테이블명 a, 테이블명 b where a.코드 = b.코드
여기 까지는 쉽게 나오는대..
그다음 그룹으로 묶는거는 테이블이없어서 테스트를 못해보겠는대요 ㅎㅎ
여기 까지는 쉽게 나오는대..
그다음 그룹으로 묶는거는 테이블이없어서 테스트를 못해보겠는대요 ㅎㅎ
select a.a1, (t1 - t2) as result
from (select a1, sum(a2) as t1 from test1 group by a1) a
left join (select a1, sum(b2) as t2 from test2 group by b1) b
on a.a1 = b.b1
요런식으로 하면 됩니다~
from (select a1, sum(a2) as t1 from test1 group by a1) a
left join (select a1, sum(b2) as t2 from test2 group by b1) b
on a.a1 = b.b1
요런식으로 하면 됩니다~

select a1, a2_sum, b2_sum, (a2_sum-ifnull(b_sum,0)) ab_diff from
(select a1, sum(a2) a2_sum from a group by a1) a_new
left join
(select b1, sum(b2) a2_sum from a group by b1) b_new
on a_new.a1=b_new.b1
(select a1, sum(a2) a2_sum from a group by a1) a_new
left join
(select b1, sum(b2) a2_sum from a group by b1) b_new
on a_new.a1=b_new.b1

더블 셀렉트를 쓰지 않고 할순 없을까요?

서브 쿼리 사용안하고 해볼려고 하다보니.. 글들이 많이 올라왔내요..
재가 착각을 한게 있는대 a.code = b.code 하면 code 값이 고유 값이 아니라서
조인을 했을경우 더많은 숫자 결과가 나오내요 고유값이 있거나
해당 code 값이 특정 날짜에 한계식만 있거나 했을경우에는 서브쿼리 안쓰고
될것같은데.. 고유값이 없는상태에서는 힘들어보이내요..
재가 착각을 한게 있는대 a.code = b.code 하면 code 값이 고유 값이 아니라서
조인을 했을경우 더많은 숫자 결과가 나오내요 고유값이 있거나
해당 code 값이 특정 날짜에 한계식만 있거나 했을경우에는 서브쿼리 안쓰고
될것같은데.. 고유값이 없는상태에서는 힘들어보이내요..
답변 주신 분들 고맙습니다.
열병님의 답변이 맞을것 같구요. 지금 테스트 중인데 phpMyadmin에서 쿼리 테스트 중인데...
조건식을 주니까 값이 엉뚱하게 나오네요. 걍 조건없이 쿼리 수행할때와 맞지 않는 결과가..ㅠㅠ
열병님의 답변이 맞을것 같구요. 지금 테스트 중인데 phpMyadmin에서 쿼리 테스트 중인데...
조건식을 주니까 값이 엉뚱하게 나오네요. 걍 조건없이 쿼리 수행할때와 맞지 않는 결과가..ㅠㅠ
~~ on a.a1 = b.b1
이렇게만 써드렸는데.. 조건이 있다면
~~ on a.a1 = b.b1 where 조건
그런건 요렇게 하셔야 합니다~
단, 조인조건이면 ~~ on a.a1 = b.b1 and 조건
맞지 않는 결과라 하시길래 혹시나 해서요;;
이렇게만 써드렸는데.. 조건이 있다면
~~ on a.a1 = b.b1 where 조건
그런건 요렇게 하셔야 합니다~
단, 조인조건이면 ~~ on a.a1 = b.b1 and 조건
맞지 않는 결과라 하시길래 혹시나 해서요;;
네 ... 고맙습니다. 해결했습니다.
쩝쩝.....쿼리에는 문제점이 없음을 밝혀냈습니다.
자료 입력자가 날짜를 0000-00-00으로 입력하여 1건의 데이터가 조회에서 누락되었네요. 미치고 팔짝뛰겠네요.
열병님 덕분에 조건문에 대해 확실하게 알게되었습니다. 너무 고맙습니다.
늘 행복하세요.
추신 : 다른 분들도 신경써주셔서 감사합니다. 즐거운 시간되세요.^^
쩝쩝.....쿼리에는 문제점이 없음을 밝혀냈습니다.
자료 입력자가 날짜를 0000-00-00으로 입력하여 1건의 데이터가 조회에서 누락되었네요. 미치고 팔짝뛰겠네요.
열병님 덕분에 조건문에 대해 확실하게 알게되었습니다. 너무 고맙습니다.
늘 행복하세요.
추신 : 다른 분들도 신경써주셔서 감사합니다. 즐거운 시간되세요.^^