《MongoDB学习—(6)MongoDB的find查询比较符》要点:
本文介绍了MongoDB学习—(6)MongoDB的find查询比较符,希望对您有用。如果有疑问,可以联系我们。
相关主题:非关系型数据库
维易PHP培训学院每天发布《MongoDB学习—(6)MongoDB的find查询比较符》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。
首先,先通过以下函数向BookList集合中插入10000条数据
调用函数,这样,BookList中就有10000条数据了
通过命令db.[documentName].find({条件},{键指定})来查询具有特定特征的数据,键指定可用于指定什么键显示想、什么键不显示.例如:{id:0,name:1,publishTime:1}表示id键内容不显示,name与publishTime内容显示.
一,比较操作符查询
$lt (less than) | < |
$lte (less than equal) | <= |
$gt (greater than) | > |
$gte (greater than equal) | >= |
$ne (not equal) | != |
我们可以运用比较操作符来查询出出版日期publishTime在2010年至2016年的书,并且不显示id,那么我们可以用一下语句进行查询
效果如下:
其他比较符可用类似方法组合使用.
二,$in与$nin包含与不包含
$in与$nin的用法是根据特定的键值.
命令格式db.[documentName].find({filed:{$in:[value1,value2,...]}}),运用该命令就可以查询出键filed中包含value1或value2,...等的数据,是一个或关系,只要包含有一个相同的value就符合查找条件.命令格式db.[documentName].find({filed:{$nin:[value1,value2,...]}}),运用该命令就可以查询出键filed中不包含value1或value2,...等的数据.
三,$or或查询
命令格式db.[documentName].find({$or:[{条件},{条件},...]}),注意中括号与花括号的区别,例如我们要查询id小于30,出版日期publishTime介于2000-2010年的数据,我们就可以用命令:
四,Null关键字
Null关键字可用于查询集合中哪些数据不包含某些键,命令格式db.[documentName].find({filed:null})
五,正则表达式查询
命令格式db.[documentName].find({filed:正则表达式}),由于我对于JS的正则表达式不是太了解,我就不尝试了( ̄o ̄) .
六,$not取反
该指令可将任何查询条件取反,类似于查询publishTime大于2016年的,通过$not取反可取到publishTime小于等于2016年的,一下为指令变换:
db.BookList.find({publishTime:{$gt:2016}}) 取反 db.BookList.find({publishTime:{$not:{$gt:2016}}})