[MONGODB] MongoDB를 3.6.0-RC3 배열 필터가 작동하지?
MONGODBMongoDB를 3.6.0-RC3 배열 필터가 작동하지?
나는 정확히 문서의 예처럼, MongoDB를 3.6.0-RC3에 배열 필터를 사용하려고하지만, 어떤 행이 영향을 받고없고 오류 아니에요.
실시 예는 단순화된다. 나는이 위치 연산자로 $ 수행 할 수 있습니다 알고 있지만 나는이 개 수준의 중첩 배열이 기능을 사용하기 위해 기획하고있다.
db.getCollection('books').update({},
{
$set: { "authors.$[element].firstName": "Joe" }
},
{
arrayFilters: [ { element: { "_id": ObjectId("some_id") } } ],
multi: true
})
사람은 아직이 시도?
해결법
-
==============================
1.당신은 robomongo이를 입력하고 있습니까? 그것은처럼 보인다! 그것이 작동하지 않도록합니다. 나는이 때문에 쉘 도우미 메서드는 현재 구현 방식 (robomongo 쉘 기반의 빌드입니다) 그것을 기반으로 "나이 쉘"또는 아무것도 일을하지 않는 말을 어디에서 MongoDB를 가진 중첩 된 배열을 업데이트 내 메모를 읽기 :
당신은 robomongo이를 입력하고 있습니까? 그것은처럼 보인다! 그것이 작동하지 않도록합니다. 나는이 때문에 쉘 도우미 메서드는 현재 구현 방식 (robomongo 쉘 기반의 빌드입니다) 그것을 기반으로 "나이 쉘"또는 아무것도 일을하지 않는 말을 어디에서 MongoDB를 가진 중첩 된 배열을 업데이트 내 메모를 읽기 :
그래서 당신은 그 버전으로 번들 몽고 쉘을 사용하거나 표준 드라이버를 통해 코드를 실행하거나, 릴리스 후보 "로 플레이"를 원하는 경우.
-
==============================
2.이 버그는 단지 $ 사용 arrayFilter 괜찮은가이 mongo4.0.4 스튜디오 - 3t에서 그것을 시도, 2018년 6월 1일에 스튜디오 3t의 버전을 업그레이드
이 버그는 단지 $ 사용 arrayFilter 괜찮은가이 mongo4.0.4 스튜디오 - 3t에서 그것을 시도, 2018년 6월 1일에 스튜디오 3t의 버전을 업그레이드
-
==============================
3.
db.getCollection('books').update({}, { $set: { "authors.$[element].firstName": "Joe" } }, { arrayFilters: [ { "element._id": ObjectId("some_id") } ], multi: true })
from https://stackoverflow.com/questions/47225822/mongodb-3-6-0-rc3-array-filters-not-working by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] MongoDB를 사용하는 필터는 목록과 일치하는 (0) | 2019.12.27 |
---|---|
[MONGODB] 배열 필드의 모든 값이 다른 배열에 존재 선택 문서 (0) | 2019.12.27 |
[MONGODB] 사용자 정의 함수는 열 MongoDB를 투사을 계산 (0) | 2019.12.27 |
[MONGODB] 배열에서 Upsert 및 $ INC는 하위 문서 (0) | 2019.12.27 |
[MONGODB] MongoDB의 데이터베이스는 자동으로 삭제 (0) | 2019.12.27 |