반응형
나는 때때로 내 SQL 쿼리에서 NOT IN 과 NOT EXIST 의 사용을 바꾸었고 둘 다 동일한 결과를 산출했습니다. NOT IN 의 논리가 NOT IN 과 동일합니까? NOT IN ... (하위 쿼리 내에서 "OR"로 평가됨)이 NOT EXIST ( "OR"로도 평가됨)와 같다고 생각하기 때문입니다. ? 아니면 내가 뭔가를 놓치고 있습니까?
해결 방법
이 기사는 당신에게 흥미로울 수 있습니다 :
간단히 말해서 NOT IN 은 두 개의 하위 쿼리에서 반환 된 NULL 값을 처리하는 방식에서 NOT EXISTS 와 약간 다릅니다.
NULL 값이 없으면 둘 다 NESTED LOOP ANTI JOIN 에서 종류를 수행하지만 NOT IN 이 조금 더 효율적입니다.
참조 페이지 https://stackoverflow.com/questions/5780096
반응형
'MySql' 카테고리의 다른 글
| MySQL Windows 7의 Rails 3 애플리케이션에서 "mysql2"gem을 사용하는 방법은 무엇입니까? (0) | 2020.10.11 |
|---|---|
| MySQL과 다른 (0) | 2020.10.11 |
| MySQL 상위 쿼리의 필드를 참조하는 MySQL 하위 쿼리 (0) | 2020.10.10 |
| MySQL Oracle 데이터베이스를 MySQL로 어떻게 변환합니까? (0) | 2020.10.10 |
| MySQL Python MySQLdb 문제 (TypeError : % d 형식 : str이 아닌 숫자가 필요함) (0) | 2020.10.10 |
댓글