Computer >> 컴퓨터 >  >> 프로그램 작성 >> MongoDB

MongoDB는 null 값을 인덱싱할 수 있습니까?

<시간/>

예, MongoDB는 null 값을 쉽게 색인화할 수 있습니다. 먼저 문서로 컬렉션을 생성해 보겠습니다. −

> db.demo170.createIndex({"Value":1},{unique:true});
{
   "createdCollectionAutomatically" : true,
   "numIndexesBefore" : 1,
   "numIndexesAfter" : 2,
   "ok" : 1
}
> db.demo170.insert({"Value":100});
WriteResult({ "nInserted" : 1 })
> db.demo170.insert({"Value":null});
WriteResult({ "nInserted" : 1 })
> db.demo170.insert({"Value":90});
WriteResult({ "nInserted" : 1 })
> db.demo170.insert({"Value":78});
WriteResult({ "nInserted" : 1 })

find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -

> db.demo170.find();

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" : ObjectId("5e369b789e4f06af551997da"), "Value" : 100 }
{ "_id" : ObjectId("5e369b7c9e4f06af551997db"), "Value" : null }
{ "_id" : ObjectId("5e369b809e4f06af551997dc"), "Value" : 90 }
{ "_id" : ObjectId("5e369b969e4f06af551997dd"), "Value" : 78 }

다음은 null을 인덱싱하는 쿼리입니다 -

> db.demo170.find().sort({Value:1});

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" : ObjectId("5e369b7c9e4f06af551997db"), "Value" : null }
{ "_id" : ObjectId("5e369b969e4f06af551997dd"), "Value" : 78 }
{ "_id" : ObjectId("5e369b809e4f06af551997dc"), "Value" : 90 }
{ "_id" : ObjectId("5e369b789e4f06af551997da"), "Value" : 100 }