MongDB基本操作

数据库操作

  • show dbs
  • use admin
  • db.dopDatebase()

集合创建

  • db.createCollection('sut')
  • db.createCollection('sub',{capped:tue,size:10})
    capped:默认为False,表示不设置上限,为true是表示上限大小,当文档达到上限时,会将之前的数据覆盖,单位i为字节。
  • show collections
  • db.stu.drop()

数据操作

  • db.stu.insert({name:'wangwang',age:19})
  • db.stu.update({name:'wangwang',{name:'wangshuaishuai'})
  • 指定属性更新:
  • db.stu.update({name:'wangwang',{$set:{age:18}})
  • db.stu.update({name:'wangwang',{$set:{age:18}},{multi:true}) -->修改多条匹配到的数据
  • 删除:
  • db.stu.remove({gender:0},{justOne:true})-->justOne可选,如果为True则只删除一条,默认false删除多条
  • 全部删除:
  • db.stu.remove({})

数据查询

基本查询

  • 方法find():查询
    db.集合名称.find({条件文档})
  • 方法findOne():查询,只返回第一个
    db.集合名称.findOne({条件文档})
  • 方法pretty():将结果格式化
  • db.集合名称.find({条件文档}).pretty()

比较运算符

  • 等于,默认是等于判断没有运算符
  • 小于$lt
  • 小于或等于$lte
  • 大于$gt
  • 大于或等于$gte
  • 不等于$ne
  • 例1:查询名称等于'gj'的学生
    db.stu.find({name:'gj'})
  • 例2:查询年龄大于或等于18的学生
    db.stu.find({age:{$gte:18}})

逻辑运算符

  • 查询时可以有多个条件,多个条件之间需要通过逻辑运算符连接
  • 逻辑与:默认是逻辑与的关系
  • 例3:查询年龄大于或等于18,并且性别为1的学生
    db.stu.find({age:{$gte:18},gender:1})
  • 逻辑或:使用$or
  • 例4:查询年龄大于18,或性别为0的学生
    db.stu.find({gt:18}},{gender:1}]})
  • and和or一起使用
  • 例5:查询年龄大于18或性别为0的学生,并且学生的姓名为gj
    db.stu.find({gte:18}},{gender:1}],name:'gj'})

范围运算符

  • 使用 nin判断是否在某个范围内
  • 例6:查询年龄为18、28的学生
    db.stu.find({age:{$in:[18,28]}})
  • 支持正则表达式
    使用//或$regex编写正则表达式
  • 例7:查询姓黄的学生
    db.stu.find({name:/^黄/})
    db.stu.find({name:{$regex:'^黄'}}})
  • 自定义查询
  • 使用$where后面写一个函数,返回满足条件的数据
  • 例7:查询年龄大于30的学生
    db.stu.find({$where:function(){return this.age>20}})
limt 读取限制数量的数据

db.collection.find().limit(num):

skip 跳过指定数量的文档

db.collection.find().skip(num)

  • 一起使用
    查询第五到第八条数据:
    db.stu.find.skip(5).limit(4):不分先后顺序
投影 显示需要的字段

对于需要显示的字段,设置为1即可。

db.stu.find({},{name:1,gender:1,_id:0})

排序 sort

1:升序

-1:降序

db.stu.find().sort({gender:-1,age:1})

统计 count

db.stu..find({条件}).count()

db.stu.count({条件})

db.stu.count({age:{$gt:20},gender:1})

去重 distinct

db.集合名称.distinct('去重字段',{条件})

db.stu.distinct('gender',{age:{$gt:18}})

你可能感兴趣的:(MongDB基本操作)