요약: 특정 필드의 값이 지정된 값보다 큰(또는 작은) document를 모두 가져오고 싶을 때
- $gt (큰)
- $gte (크거나 같은)
- $lt (작은)
- $lt (작거나 같은)
우선 아래 문서를 inventory collection에 추가했다고 가정합니다.
db.inventory.insertMany( [
{
"상품명": "사과", "수량": 30,
"배송정보": { "업체명": "쿠팡이츠", "배송비": 3 }
},
{
"상품명": "배", "수량": 50,
"배송정보": { "업체명": "배민", "배송비": 4 }
},
{
"상품명": "바나나", "수량": 10,
"배송정보": { "업체명": "마켓컬리", "배송비": 1 }
}
] )
1. 위의 document에서 "수량" 필드의 값이 20보다 큰 모든 문서를 선택합니다.
db.inventory.find( { 수량: { $gt: 20 } } )
결과는 다음과 같습니다.
{
_id: ...,
상품명: '사과',
수량: 30,
배송정보: { 업체명: '쿠팡이츠', 배송비: 3 }
},
{
_id: ...,
상품명: '배',
수량: 50,
배송정보: { 업체명: '배민', 배송비: 4 }
}
2. Embeded Document(객체를 MongoDB에서는 Document로 부르는 듯)의 필드 값을 필터할 수 있습니다.
embeded document인 배송정보의 "배송비" 필드 값이 3보다 큰 모든 문서를 선택합니다.
db.inventory.find( { "배송정보.배송비": { $gt: 3 } } )
결과는 다음과 같습니다.
{
_id: ...,
상품명: '배',
수량: 50,
배송정보: { 업체명: '배민', 배송비: 4 }
}
하나를 알면 4개가 보입니다.
출처: $gt — MongoDB Manual , $gte — MongoDB Manual , $lt — MongoDB Manual , $lte — MongoDB Manual
'MongoDB > Comparison Query Operators' 카테고리의 다른 글
[MongoDB] $in, $nin (1) | 2022.06.30 |
---|---|
[MongoDB] $eq, $ne (1) | 2022.06.30 |