query 질문 0 1 1,119

by 가을하늘이 [SQL Query] [2011.07.18 11:29:34]


안녕하세요~

쿼리문을 짜고 있는데..도통 방법이 떠오르지 않아서 이렇게 질문드려요..

데이타는 아래와 같이 들어있습니다..
table = in_gb_tbl

번호 구분(gb) 입고일자(in_date)   출하일자(ch_date)
1     4   20110101
2    1  20110104


데이타가 이렇게 있고 조건 1을 선택해서 조회하면
구분이 4이면 입고일자가 null 인거랑
구분이 1이면 출하일자가 null 인 데이타가 조회되야 되고

조건2를 선택해서 조회하면
구분이 4이면 입고일자가 null 이 아닌거랑
구분이 1이면 출하일자가 null 이 아닌 데이타가 조회가 되어야 합니다..

어떤식으로 쿼리를 짜야 할까요?
고수님들의 조언 부탁드립니다..


by 도가니 [2011.07.18 11:59:42]
with in_gb_tbl as (
select 1 no, 4 gb, '2011010' in_date, null ch_date from dual union all
select 2,1,null,'20110104' from dual
)
select * from in_gb_tbl
where ((gb=4 and in_date is null) or (gb=1 and ch_date is null))
and 1=:pram
union all
select * from in_gb_tbl
where ((gb=4 and in_date is not null) or (gb=1 and ch_date is not null))
and 2=:pram;
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입