您的位置:首页 > 数据库 > Mongodb

MongoDB之高级查询一

2016-12-22 16:36 302 查看

MongoDB之高级查询

一:需要返回指定的键,可以通过find/findOne的第二个参数来指定想要的字段的值,语法:

Db.collname.find({条件},{“name”:1,“pwd”:1});如果把1改为0,则是相反,不显示该字段。可以以此将_id去掉

二:$in:同sql中in可以使用多个值匹配查询,语法:{“字段1”:{“$in”:[1,2,3]}}

三:$nin:与in相反,会返回所有不匹配的数据

四:$or:同sql中or,语法:({“$or”:[{“字段1”:“值1”},{“字段2”:“值2”}]}),$or里面也可以包含其它的语句,如将上面$in的语法放到“值1”的位置。

五:$mod:会将查询的值除以第一个参数 ,如果余数等于第二个参数则输出,语法:

{“字段”:{“$mod”:[5:1]}}返回结果1、6、11、16

六:$not:{“字段”:{“$not”:{“$mod”:[5:1]}}}返回结果2、3、4、5、7、8、9,not与正则表达式匹配可以查找那些与特定模式不匹配的文档

Mongodb在查询时因为内置js编辑器,可以在查询的语句上使用正则表达式匹配查询

注:在查询null时,如:db.collname.find({“字段”:null});这样mongodb不仅会将该字段为nul的查出来,还会将没有该字段的文档也查出来,如果需要查询null,则需要加上$exists字段,语法:db.collname.find({“字段”:{“$in”:[null],”$exists”:true}});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: