MongoDB CRUD

展示有哪些库

show dbs

创建数据库,需要先使用数据库

use my_test

插入单个

db.user.insert({username:"a"})

插入多个

db.user.insert([
  {username:"x"},
  {username:"y"},
  {username:"z"}
  ])

查询集合中的文档(find()返回的是一个数组)

db.user.find().limit(5)

查询集合中的文档(findOne()返回的是一个对象)

db.user.findOne() 

根据条件进行查询

db.user.find({username:"x"})

查询集合中数据条数

db.user.count()

向集合中添加不存在的userage属性字段

db.user.update({username:"x"},{$set:{userage:18}})

替换集合中已经存在username字段的值

db.user.update({username:"x"},{username:"m"})

删除username为x的文档的年龄字段

db.user.update({username:"x"},{$unset:{userage}})

向username为x的文档中,添加一个hobby

hobby:{cities:["beijing","shanghai","shenzhen"] , movies:["sanguo","hero"]}
db.user.update({username:"x"},{$set:{hobby:{cities:["beijing","shanghai","shenzhen"] , movies:["sanguo","hero"]}})

查询电影为hero的文档

db.user.find({"hobby.movies":"hero"})

向username为y的文档中,添加一个hobby

db.user.update({username:"y"},{$set:{hobby:{movies:["都挺好","喜剧之王"]}}})

向username为y的文档中,添加一个新的电影 “乱世佳人”(参数$push可以重复添加 参数 $addToset如果已经有,那么不添加)

(字段已经存在用$ push 不存在用$set)

db.user.update({username:"y"},{$push:{"hobby.movies":"乱世佳人"}})

删除喜欢beijing的用户

db.user.remove({"hobby.cities":"beijing"})

删除文档中所有数据

db.user.remove({})

删除集合(如果数据库中只有一个集合,那么也会删除这个数据库)

db.user.drop();

删除整个数据库

db.dropDatabase()

向numbers中插入20000条数据

var arr = [];
for(var i = 1; i <= 20000; i++){
arr.push({num:i});
}
db.numbers.insert(arr);

查询numbers中num为500的文档

db.numbers.find({num:{$eq:500}})

查询numbers中num大于等于5000的文档

db.numbers.find({num:{$gte:5000}})

查询numbers中num小于30的文档

db.numbers.find({num:{$lt:30}})

查询numbers中num大于40小于50的文档

db.numbers.find({num:{ g t : 40 , gt:40, gt:40,lt:50}})

查询大于19000 或 小于40的

db.numbers.find({KaTeX parse error: Expected '}', got 'EOF' at end of input: or:[{num:{gt:19000}},{num:{$lt:40}}]})

查询前10条的数据

db.numbers.find({}).limit(10)

查询第21条和第30条间的数据

db.numbers.find({}).skip(20).limit(10)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值