mongoDB find的$in $all的区别


使用过mysql的人知道in是完全匹配的,如果想实现匹配其中的一个字段,那么需要使用find_in_set. 在使用mongodb开发的过程中遇到过类似的需求,实现方法也很简单,只需使用in即可,如果是all的话,那么表示完全匹配。来看个实例

mongodb $in 查询

1

2

3

> db.col_content.find({'nodeID':{$in:['7788']}})

{ "_id" : ObjectId("525baa67539d1ec00700002a"), "nodeID" : [ "7788" ], "i" : 3 }

{ "_id" : ObjectId("525baab1539d1ec00700002b"), "nodeID" : [ "123", "7788" ], "i" : 4}

 

mongodb $all 查询

1

2

> db.col_content.find({'OUT':{$all:['123','7788']}})

{ "_id" : ObjectId("525baab1539d1ec00700002b"), "OUT" : [ "123", "7788" ], "i" : 4}

 

上面可以看出区别了

 

 

{ "is_effect" : { "$in" : ["1"] } }


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM