MongoDB의 필드 비교
경우에 따라 두 필드를 비교하여 문서를 찾아야 합니다. 예를 들어 MongoDB 컬렉션에서 문서를 선택할 때 일련 번호와 ID 번호를 고려해야 할 수 있습니다. 이 튜토리얼의 뒷부분에서 이것을 보게 될 것입니다.
이 기사에서는 MongoDB에서 두 필드를 비교하는 방법을 살펴봅니다. 또한 주제를 쉽게 이해할 수 있도록 설명과 함께 관련 예를 볼 것입니다.
MongoDB의 필드 비교
이 목적을 위해 사용할 수 있는 두 가지 기술이 있습니다. MongoDB 컬렉션에서 문서를 검색하거나 추출하는 데 사용되는 두 가지 기술 모두에 내장 메서드 find()
를 사용합니다.
첫 번째 기술에서는 주로 특정 기준과 일치하는 $where
키워드를 사용합니다. 두 번째 기법에서는 $expr
키워드를 사용하여 간단한 집계를 사용하여 집계 표현식을 인수로 구현할 수 있습니다.
더 명확하게 하기 위해 예를 살펴보겠습니다.
MongoDB에서 두 필드를 비교하는 예
아래 예제에서는 MongoDB의 두 필드를 비교하는 방법을 살펴보겠습니다. sl
및 id
필드를 비교합니다.
이제 이 목적을 위한 명령은 다음과 같습니다.
$where
키워드 사용:
db.mycolletion.find( { $where : "this.sl < this.id" } );
$expr
키워드 사용:
db.mycolletion.find({$expr:{$lt:["$sl", "$id"]}})
위 명령에서 $lt
는 비교 연산자입니다. 필요할 때 사용할 수 있는 다른 비교 연산자가 있습니다.
MongoDB에서 사용 가능한 비교 연산자
아래에서 MongoDB에서 집계와 함께 사용 가능한 비교 연산자를 공유했습니다.
$eq
- 같음 연산자를 나타냅니다.$ne
- 같지 않음 연산자를 나타냅니다.$gt
- 보다 큼 연산자를 나타냅니다.$gte
- 크거나 같음 연산자를 나타냅니다.$lt
- 보다 작음 연산자를 나타냅니다.$lte
- 작거나 같음 연산자를 나타냅니다.$in
- 배열의 모든 값과 일치합니다.$nin
- 배열의 어떤 값과도 일치하지 않습니다.
이제 위에서 공유한 두 명령 모두 아래와 같은 결과를 제공합니다.
{ _id: ObjectId("6371fd850f19826ee6ca5138"),
sl: 0,
Name: 'Alen',
id: '3'
}
참고: 올바른 컬렉션에 있는지 확인하십시오. 특정 컬렉션을 켜려면
use YourDB
명령을 사용하십시오. 그렇지 않으면 오류가 발생합니다.
이 문서에 표시된 명령은 MongoDB 데이터베이스용이며 명령은 MongoDB 콘솔에서 실행해야 합니다.
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn