해당월 품목명 담당자 사업장 입고량 출고량 재고량
--------------------------------------------------------------------------------------------------------------------------------------
1월 죠리퐁 장그래 서울 300 200 200
2월 빼빼로 오과장 대전 400 500 0
3월 칸쵸 박과장 대구 0 200 200
4월 초코렛 강대리 부산 300 200 200
5월 빵또아 이대리 대구 300 500 0
6월 쵸코바 이사원 인천 300 200 200
---------------------------------------------------------------------------------------------------------------------------------------
SELECT * FROM TEST A
WHERE A.사업장 IN ('서울', '대전', '대구', '부산')
위의 쿼리문 조건을 만족하면서, 한가지 조건을 더 구현하고 싶습니다.
(아래 조건을 반드시 추가해야 되는 내용입니다. 위의 데이터는 일부이고 데이터양이 방대하거든요 ㅠ)
조건내용 : 위의 쿼리문처럼 대구 사업장을 출력을 해야 하나,
사업장이 대구일 때, 입고량이 0인것은 출력에서 제외를 시키고 싶습니다 ㅠ
조언 부탁드립니다.
with t as ( select '1월' 해당월 , '죠리퐁' 품목명, '장그래' 담당자, '서울' 사업장, 300 입고량, 200 출고량, 200 재고량 from dual union all select '2월' , '빼빼로', '오과장', '대전', 400 , 500 , 0 from dual union all select '3월' , '칸쵸', '박과장', '대구', 0 , 200 , 200 from dual union all select '4월' , '초코렛', '강대리', '부산', 300 , 200 , 200 from dual union all select '5월' , '빵또아', '이대리', '대구', 300 , 500 , 0 from dual union all select '6월' , '쵸코바', '이사원', '인천', 300 , 200 , 200 from dual )select * from t WHERE 사업장 IN ('서울', '대전', '대구', '부산') MINUS select * from t WHERE 사업장 = '대구' AND 입고량 = 0
-- 질문이 모호하여... -- 1. 사업장과 상관 없이 입고량이 0 인것 제외? SELECT * FROM test WHERE 사업장 IN ('서울', '대전', '대구', '부산') AND 입고량 != 0 ; -- 2. 사업장이 대구 이면서 입고량이 0 인것 제외? SELECT * FROM test WHERE 사업장 IN ('서울', '대전', '대구', '부산') AND NOT (사업장 = '대구' AND 입고량 = 0) ; SELECT * FROM test WHERE 사업장 IN ('서울', '대전', '대구', '부산') AND (사업장 != '대구' OR 입고량 != 0) ;