louyaoluan 发表于 2015-7-6 10:07:19

MongoDB查询语法

  mongoDb是非关系型数据库,用习惯了mssql,mysql等数据库的需要转换一下思维
  mongoDb存的是与js的json结构一样的文档,表中的每一条记录都可以结构不同
  
  1,大于,小于,大于等于,小于等于
  $gt 大于   >
  $lt 小于    <
  $gte 大于或等于>=
  $lte小于等于   18
  
  db.collection.find({age:{$lt:25}});//年龄小于25岁,不包含25岁
  SQL:SELECT * FROM Collection WHERE age=18
  
  db.collection.find({age:{$lte:25}});//年龄小于等于25岁的,包含25岁
  SQL:SELECT * FROM Collection WHERE age db.blog.save({ title : "My First Post", author: {name : "Jane", id : 1}})
  如果我们要查询 authors name 是Jane的, 我们可以这样:
  > db.blog.findOne({"author.name" : "Jane"})
  如果不用点,那就需要用下面这句才能匹配:
  db.blog.findOne({"author" : {"name" : "Jane", "id" : 1}})
  下面这句:
  db.blog.findOne({"author" : {"name" : "Jane"}})
  是不能匹配的,因为mongodb对于子对象,他是精确匹配。
  
  9 元操作符 $not 取反
  如:
  db.customers.find( { name : { $not : /acme.*corp/i } } );db.things.find( { a : { $not : { $mod : [ 10 , 1 ] } } } );
  
  以上是常用的查询语法,下一篇将介绍复合查询
  最好的文档还是官方文档,英文好的可以自己看看
  http://www.mongodb.org/display/DOCS/OR+operations+in+query+expressions
  
页: [1]
查看完整版本: MongoDB查询语法