MongoDB的CRUD

mac2024-03-08  28

1. 展示有哪些数库
show dbs
2. 创建数据库,需要先使用数据库
use my_test
3. 插入单个
db.user.insert({username:"a"})
4. 插入多个
db.user.insert([ {username:"x"}, {username:"y"}, {username:"z"} ])
5. 查询集合中的文档(find()返回的是一个数组)
db.user.find()
6. 查询集合中的文档(findOne()返回的是一个对象)
db.user.findOne()
7. 查询集合中指定的文档
db.user.find({username:"x"})
8. 统计集合中文档的数量
db.user.count()
9. 向集合中添加不存在的userage属性字段
db.user.update({username:"x"},{$set:{userage:18}})
10. 替换集合中已经存在username字段的值
db.user.update({username:"x"},{username:"m"})
11. 删除username为x的文档的年龄字段
db.user.update({username:"x"},{$unset:{userage}})
12. 向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"]}})
13. 查询电影为hero的文档
db.user.find({"hobby.movies":"hero"})
14. 向username为y的文档中,添加一个hobby
db.user.update({username:"y"},{$set:{hobby:{movies:["都挺好","喜剧之王"]}}})
15. 向username为y的文档中,添加一个新的电影 “乱世佳人”(参数$push可以重复添加 参数 $addToset如果已经有,那么不添加)

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

db.user.update({username:"y"},{$push:{"hobby.movies":"乱世佳人"}})
16. 删除喜欢beijing的用户
db.user.remove({"hobby.cities":"beijing"})
17. 删除文档中所有数据
db.user.remove({})
18. 删除集合(如果数据库中只有一个集合,那么也会删除这个数据库)
db.user.drop();
19. 删除整个数据库
db.dropDatabase()
19. 向numbers中插入20000条数据
var arr = []; for(var i = 1; i <= 20000; i++){ arr.push({num:i}); } db.numbers.insert(arr);
20. 查询numbers中num为500的文档
db.numbers.find({num:{$eq:500}})
21. 查询numbers中num大于等于5000的文档
db.numbers.find({num:{$gte:5000}})
22. 查询numbers中num小于30的文档
db.numbers.find({num:{$lt:30}})
23. 查询numbers中num大于40小于50的文档
db.numbers.find({num:{$gt:40,$lt:50}})
24. 查询大于19000 或 小于40的
db.numbers.find({$or:[{num:{$gt:19000}},{num:{$lt:40}}]})
25. 查询前10条的数据
db.numbers.find({}).limit(10)
26. 查询第21条和第30条间的数据
db.numbers.find({}).skip(20).limit(10)
最新回复(0)