歡迎您光臨本站 註冊首頁

· mongodb ne雜誌閱讀

mongodb中find $ne null 與$exists的區別

admin @ 2020-04-18 reply:0

1.

test collection 資料為:

db.test.find()


{ "_id" : ObjectId("5be29949f1acad52e4c10b98"), "name" : "jane", "info" : [ ] }
{ "_id" : ObjectId("5be29952f1acad52e4c10b99"), "name" : "mike", "info" : {  } }
{ "_id" : ObjectId("5be29ab7f1acad52e4c10b9a"), "name" : "john", "info" : { "age" : 19, "height" : 180 } }



2.

執行以下命令時:

db.test.find({"info.age":{"$ne":null}})


    info 為[] 的也會被找到。網上找了下沒找到具體解釋。

{ "_id" : ObjectId("5be29949f1acad52e4c10b98"), "name" : "jane", "info" : [ ] }
{ "_id" : ObjectId("5be29ab7f1acad52e4c10b9a"), "name" : "john", "info" : { "age" : 19, "height" : 180 } }


3.

db.test.find({"info.weight":{"$ne":null}})


{ "_id" : ObjectId("5be29949f1acad52e4c10b98"), "name" : "jane", "info" : [ ] }


4.

但是如果執行以下語句。

db.test.find({"info.age":{"$exists":true}})


只有一條資料找到。

{ "_id" : ObjectId("5be29ab7f1acad52e4c10b9a"), "name" : "john", "info" : { "age" : 19, "height" : 180 } }

[admin via ] mongodb中find $ne null 與$exists的區別已經有524次圍觀

http://coctec.com/magazine/show-post-item-80.html