AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

$nin (쿼리 자 연산자)

$nin

$nin 다음의 경우 문서를 선택합니다:

  • 지정된 필드 값이 지정된 배열에 없는 경우

  • 지정된 필드가 존재하지 않는 경우

다음 환경에서 호스팅되는 배포에 $nin 사용할 수 있습니다.

  • MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스

연산자 $nin 형식은 다음과 같습니다.

{ field: { $nin: [ <value1>, <value2> ... <valueN> ] } }

field $nin에 배열 있는 경우 연산자 에 지정된 field 배열 의 값과 동일한 요소가 없는 배열 가진 문서를 선택합니다. 예시 들어, <value1> <value2>등이 있습니다.

다양한 BSON types 값을 비교하려면 지정된 BSON 비교순서를 참조하십시오.

이 페이지의 예시에서는 sample_mflix 샘플 데이터 세트의 데이터를 사용합니다. 이 데이터 세트를 자체 관리형 MongoDB 배포서버에 로드하는 방법에 대한 자세한 내용은 샘플 데이터 세트 로드를 참조하세요. 샘플 데이터베이스를 수정한 경우 이 페이지의 예시를 실행 하려면 데이터베이스를 제거하고 다시 만들어야 할 수 있습니다.

다음 예시 runtime 이(가) 1000 분보다 길고 rated 이(가) [ "G", "PG" ]에 없는 영화를 반환합니다. $nin 는 rated 필드 포함하지 않는 문서와도 일치하므로 쿼리 평점 데이터를 사용할 수 없는 경우에도 영화를 반환합니다.

db.movies.find(
{ rated: { $nin: [ "G", "PG" ] }, runtime: { $gt: 1000 } },
{ _id: 0, title: 1, year: 1, rated: 1 }
)

다음 예시 genres 배열 에 "Drama" 이 없는 영화의 exclude 필드 true 로 설정합니다.

db.movies.updateMany(
{ genres: { $nin: [ "Drama" ] } },
{ $set: { exclude: true } }
)

updateMany()는 $nin 문서 에 와 일치하는 필드 포함되어 있지 않은 경우에도 문서 선택합니다.

부등호 연산자 $nin은 인덱스의 많은 부분과 일치하는 경우가 많으므로 선택성이 그다지 높지 않습니다. 따라서 대부분의 경우 인덱스가 있는 $nin 쿼리는 컬렉션의 모든 문서를 스캔해야 하는 $nin 쿼리보다 성능이 좋지 않을 수 있습니다. 선택적 쿼리 만들기를 참조하세요.

이 페이지 평가하기