반응형
나는 때때로 내 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 |
댓글