조회 조건인 not in을 대채하는 방법이 뭐가 있을까요?;;; 0 3 955

by 스리갈라 [2017.05.11 11:04:24]


 

select * from table where rqst_no not in ( select rqst_no from table where yn = 'Y' or seq = 1 ) 

이렇게 not in  조건을 걸어서 임의의 테이블을 만들고 통계쿼리를 돌리면 너무 느려져서 효율이 떨어집니다. 

select * from table where yn != 'Y' or seq != 1  이렇게하면 위와 같은 결과가 안생기는데 or 조건절이 문제인거 같고...

반대 조건을 잘못 준거 같기도 하고  

간단한거 같은데 잘 안되서...

조언 부탁드립니다. 

by chrome [2017.05.11 11:11:57]

(A OR B) = NOT(A AND B) 조건이 되겠지요.(맞나.?.. 이산수학한지 너무 오래되서...

고로 where 조건은 NOT(YN='Y' AND SEQ=1) 

 


by 마농 [2017.05.11 11:23:32]
SELECT * FROM table WHERE NOT (yn = 'Y' OR seq = 1);
SELECT * FROM table WHERE yn != 'Y' AND seq != 1;

 


by 동동동 [2017.05.16 15:09:55]
select * from table  AA where not exists ( select 'X' from table BB where AA.rqst_no = BB.rqst_no AND (BB.yn = 'Y' or BB.seq = 1 )) 

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입