복붙노트

[MONGODB] 이 필드를 MongoDB에 존재하는지 확인

MONGODB

이 필드를 MongoDB에 존재하는지 확인

내가 필드 세트를 가지고 null이 아닌 모든 레코드를 찾을하려고 해요 그래서.

나는 그러나,이 쿼리가 null 동일 필드를 반환합니다 MongoDB를 문서에 따라, 존재 $를 사용해보십시오.

지금 있으리라 믿고있어 그래서 나는 이런 식으로 뭔가를해야 할 것이다 :

db.collection.find({ "fieldToCheck" : { $exists : true, $not : null } })

나는 그러나이 시도 할 때마다, 나는 누구나의 아이디어가 [하지 $의 잘못된 사용] 오류를 얻을 방법이에 대한 질의?

해결법

  1. ==============================

    1.$ NE를 사용 (은 "같지 않음")

    $ NE를 사용 (은 "같지 않음")

    db.collection.find({ "fieldToCheck": { $exists: true, $ne: null } })
    
  2. ==============================

    2.우리는 다음과 같은 컬렉션이 가정 :

    우리는 다음과 같은 컬렉션이 가정 :

    { 
      "_id":"1234"
      "open":"Yes"
      "things":{
                 "paper":1234
                 "bottle":"Available"
                 "bottle_count":40
                } 
    }
    

    병이 필드를 잘 작성하지의 존재한다면 우리는 알고 싶어?

    년 :

    db.products.find({"things.bottle":{"$exists":true}})
    
  3. ==============================

    3.내가 찾는 그 날이 작품

    내가 찾는 그 날이 작품

    db.getCollection('collectionName').findOne({"fieldName" : {$ne: null}})
    
  4. ==============================

    4.당신은) (.Count을 사용할 수 있습니다

    당신은) (.Count을 사용할 수 있습니다

    count, err = collection.Find(bson.M{field: value}).Count()
    

    하지만 세트로 기억 :

    Session.SetSafe

    db.SetSafe(&mgo.Safe{})
    

    그렇지 않으면 모든 호출에 0을 반환합니다.

  5. from https://stackoverflow.com/questions/19868016/check-that-field-exists-with-mongodb by cc-by-sa and MIT license