[MONGODB] MongoDB를에 $을 모두 사용하여 배열 값을 일치시키기위한 여러 $의 elemMatch 식?
MONGODBMongoDB를에 $을 모두 사용하여 배열 값을 일치시키기위한 여러 $의 elemMatch 식?
질문에 대한 대답에서 나는 $ elemMatch를 사용하여 배열 값을 검색하기위한 흥미로운 솔루션을 발견했다.
우리는 우리의 컬렉션에서 다음과 같은 서류가있는 경우 :
{
foo : [ { bar : "xy", baz : 1 },
{ bar : "a", baz : 10 } ]
},
{
foo : [ { bar : "xy", baz : 5 },
{ bar : "b", baz : 50 } ]
}
다음 쿼리는 첫 번째 문서 일치합니다 :
db.test.find({
foo : { "$all" : [ { "$elemMatch" : { bar : "xy", baz : 1} }, { "$elemMatch" : { bar : "a", baz : 10 } } ] }
});
나는 여러 가지 다른 예제를 시도하고 정말 작동합니다. 그러나 $ 모든 연산자에 대한 공식 문서는이 두 쿼리를 조합에 대해 아무 말도하지 않습니다.
이것은 의도 된 행동이나 버그인가? 또는 문서이 사용 사례를 포함하지 않는이 단지 문제는?
해결법
-
==============================
1.이것은 의도 된 동작입니다. 문서는이 사용 사례를 포함하지 않으며, 우리는 더 나은 그것을 만드는 데 노력하고 있습니다. 그 어려운, 그러나, 가능한 모든 쿼리 조합을 문서화합니다.
이것은 의도 된 동작입니다. 문서는이 사용 사례를 포함하지 않으며, 우리는 더 나은 그것을 만드는 데 노력하고 있습니다. 그 어려운, 그러나, 가능한 모든 쿼리 조합을 문서화합니다.
from https://stackoverflow.com/questions/9824341/multiple-elemmatch-expressions-for-matching-array-values-using-all-in-mongodb by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] 방법 2 명 MongoDB의 컬렉션을 비교? (0) | 2019.12.24 |
---|---|
[MONGODB] 필드 MongoDB의 존재 질의 향상 (0) | 2019.12.24 |
[MONGODB] 포함 된 문서에 'upsert' (0) | 2019.12.24 |
[MONGODB] 몽구스 - 어떻게하여 그룹과 채우려면? (0) | 2019.12.24 |
[MONGODB] 어떻게하여 MongoDB에서 배열의 n 번째 요소를 삭제합니다 (0) | 2019.12.24 |