안녕하세요 초보라서 모르는게너무많네요 ㅠ
SELECT SHIP_REG_DD,SHIP_SEQ,ITEM_CODE,SUM(WGT)
FROM JGPL2
WHERE (SHIP_REG_DD,SHIP_SEQ) IN(SELECT SHIP_REG_DD,SHIP_SEQ FROM JGPL3)
GROUP BY SHIP_REG_DD,SHIP_SEQ,ITEM_CODE
20140101 22 L01 26971--해당일 ,순번 ,아이템 코드 ,중량
20140101 22 M01 1622
20140101 27 M01 1602
20140101 27 M03 26263
20140102 10 L01 25625
20140102 10 M01 2881
20140102 18 M01 23875
20140102 18 M03 1748
---------------
셀렉 결과가 이렇게있는데요
조건문으로 같은 해당일 순번에 아이템 코드가 K01 M01 있을때란 조건문을줄수있는 방법이있을까요
이셀렉문이 20140101부터 20141231까지의 판매된것들중 K01만판매됫을경우 M01만 판매됫을경우 M03만 판매됫을경우 K01과 M01이 판매됫을경우 K01과 M03이판매됫을경우 M01과M03이 판매됫을경우 전체세가지가 판매됫을경우의
중량을 구하는 셀렉문입니다 ...ㅠㅠ위의 코드는 두가지일경우를 셀렉할경우를 생각하면서진행중인셀렉문이구요 ㅠㅠ
SELECT *
FROM JGPL2
SELECT ITEM_CODE, SUM(WGT) --하나 짜리 구하기
FROM JGPL2
WHERE (SHIP_REG_DD,SHIP_SEQ) IN (
SELECT SHIP_REG_DD,SHIP_SEQ
FROM JGPL1
GROUP BY SHIP_REG_DD,SHIP_SEQ
HAVING COUNT(*) = 3
)
AND ITEM_CODE = 'M03'
GROUP BY ITEM_CODE
SELECT sum(count), sum(wgt)--3개짜리
FROM JGP1
WHERE (SHIP_REG_DD,SHIP_SEQ) IN (
SELECT SHIP_REG_DD,SHIP_SEQ
FROM JGP1
GROUP BY SHIP_REG_DD,SHIP_SEQ
HAVING COUNT(*) = 3
)
SELECT ship_reg_dd, ship_seq , SUM(wgt) wgt FROM (SELECT ship_reg_dd, ship_seq, item_code , SUM(wgt) wgt , COUNT(DISTINCT item_code) cnt FROM jgpl2 WHERE ship_reg_dd LIKE '2014'||'%' AND item_code IN ('K01', 'M01', 'M03') GROUP BY ship_reg_dd, ship_seq, item_code ) WHERE cnt = 1 AND item_code = 'K01' -- WHERE cnt = 1 AND item_code = 'M01' -- WHERE cnt = 1 AND item_code = 'M03' -- WHERE cnt = 2 AND item_code IN ('K01', 'M01') -- WHERE cnt = 2 AND item_code IN ('K01', 'M03') -- WHERE cnt = 2 AND item_code IN ('M01', 'M03') -- WHERE cnt = 3 GROUP BY ship_reg_dd, ship_seq ;