mongoDB
[mongoDB] "errorMessage": "Cannot do exclusion on field dongAddress in inclusion projection"
알로호모라
2022. 5. 13. 19:56
반응형
mongoDb find query 문을 날리다가 나온 에러
"errorMessage": "Cannot do exclusion on field dongAddress in inclusion projection"
projection 부분에 포함과 제외를 함께 쓸 수 없다는 에러였다.
한 도큐먼트에 newAddress, dongAddress Field 그리고 기타 등등의 필드들이 있다면
* 포함의 경우
const result = await aCertainModel.find({}, 'newAddress dongAddress');
위의 쿼리문으로 가져올 필드들은 newAddress, dongAddress 가 된다.
* 제외의 경우
const result = await aCertainModel.find({}, '-newAddress -dongAddress');
위의 쿼리문으로 가져올 도큐먼트 안에는 위의 두 필드가 제외된다.
포함과 제외(-) 를 함께 쓰면 에러가 난다.
const result = await aCertainMedel.find({}, 'newAddress -dongAddress');
*** 예외 ***
MongoDB 모든 도큐먼트에 자동 생성되는 _id 필드는 포함 / 제외가 함께 쓰여도 된다.
ex)
const result = await aCertainModel.find({}, '-_id newAddress');
요렇게하면 _id 필드는 제외하고 newAddress필드만 나온다.
반응형