반응형
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필드만 나온다.
반응형
'mongoDB' 카테고리의 다른 글
[mongoose] _v 필드 생성 이유 및 제거하기 (0) | 2022.08.09 |
---|---|
[mongoDB] 필드값이 null 또는 not set인 도큐먼트 find문으로 찾기 (feat. $ne: null) (0) | 2022.05.17 |
[mongoDB] find 특정 텍스트 스트링 포함된 값 찾기 / 제외하기 (0) | 2022.05.13 |
[mongoimport] CSV 파일 createdAt 넣기 'createdAt', could not parse token '2022-05-13 17:05:52' to type date_oracle (0) | 2022.05.13 |
[mongoDB] create index $text search 걸어서 특정 단어 검색하기 (0) | 2022.04.29 |