null이 아니거나 비어 있음에 대한 쿼리를 설정하려면 $nin 연산자를 사용합니다. 구문은 다음과 같습니다.
db.yourCollectionName.find({yourFieldName:{$nin:[null,""]}}); 문서로 컬렉션을 만들자
> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"Larry","UserAge":24});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d20b6a629b87623db1b26")
}
> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"","UserAge":29});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d20bea629b87623db1b27")
}
> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"Sam","UserAge":32});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d20c7a629b87623db1b28")
}
> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":null,"UserAge":27});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d20d2a629b87623db1b29")
}
> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"Robert","UserAge":26});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d20dda629b87623db1b2a")
}
> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"","UserAge":23});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d20e7a629b87623db1b2b")
} 다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 표시하는 쿼리입니다.
> db.notEqualToNullOrEmptyDemo.find().pretty();
그러면 다음과 같은 출력이 생성됩니다.
{
"_id" : ObjectId("5c9d20b6a629b87623db1b26"),
"UserName" : "Larry",
"UserAge" : 24
}
{
"_id" : ObjectId("5c9d20bea629b87623db1b27"),
"UserName" : "",
"UserAge" : 29
}
{
"_id" : ObjectId("5c9d20c7a629b87623db1b28"),
"UserName" : "Sam",
"UserAge" : 32
}
{
"_id" : ObjectId("5c9d20d2a629b87623db1b29"),
"UserName" : null,
"UserAge" : 27
}
{
"_id" : ObjectId("5c9d20dda629b87623db1b2a"),
"UserName" : "Robert",
"UserAge" : 26
}
{
"_id" : ObjectId("5c9d20e7a629b87623db1b2b"),
"UserName" : "",
"UserAge" : 23
} 다음은 null 또는 비어 있지 않은 조건을 설정하는 쿼리입니다.
> db.notEqualToNullOrEmptyDemo.find({UserName:{$nin:[null,""]}}).pretty(); 그러면 다음과 같은 출력이 생성됩니다.
{
"_id" : ObjectId("5c9d20b6a629b87623db1b26"),
"UserName" : "Larry",
"UserAge" : 24
}
{
"_id" : ObjectId("5c9d20c7a629b87623db1b28"),
"UserName" : "Sam",
"UserAge" : 32
}
{
"_id" : ObjectId("5c9d20dda629b87623db1b2a"),
"UserName" : "Robert",
"UserAge" : 26
}