练习1
- 进入my_test数据库
- 向 my_test中 user集合插入一个文档
集合习惯会在其后加s 所以 user在操作时是 db.users
1
| db.users.insert({username:"猪八戒"})
|
- 查询user集合中的文档
- 向user集合中插入一个文档
1
| db.users.insert({username:"孙悟空"})
|
- 统计user集合中文档document的数量
- 查询user集合中 username为孙悟空的值
1
| db.users.find({username:"孙悟空"})
|
- 向user集合中 username=”孙悟空”的文档添加一个 address= 花果山
1 2 3 4 5 6 7
| db.users.update({username:"孙悟空"},{ { $set:{ {address:"花果山"} } } })
|
- 使用{username:”唐僧”}替换 username为 猪八戒 的文档
1
| db.users.replaceOne({username:"猪八戒"},{username:"唐僧"})
|
- 删除 username 为 孙悟空 的 address属性
1
| db.users.update({username:"孙悟空"},{$unset:{address:""}})
|
- 向 username 为 孙悟空 的文档中 添加一个 hobby:{cities:[“北京”,”上海”,”深圳”],movies:[“三国”,”英雄”]}
1 2 3 4 5 6 7 8
| db.users.update({username:"孙悟空"},{ $set:{ hobby:{ cities:["北京","上海","深圳"], movies:["三国","英雄"] } } })
|
mongodb 中的属性值也可以是一个文档,当一个文档的一个属性值是文档时,我们称之为「内嵌文档」
- 向 username 为 唐僧 的文档中 添加一个 hobby:{movies:[“大话西游”,”天下第一”]}
1 2 3 4 5 6 7
| db.users.update({username:"孙悟空"},{ $set:{ hobby:{ movies:["大话西游","天下第一"] } } })
|
- 查询喜欢 电影 movies = 英雄 的文档
- mongodb支持直接通过内嵌文档的属性进行查询,使用「.」进行操作 形如 hobby.movies的形式
- 通过内嵌文档查询 必须使用引号包起来 形如 “hobby.movies”
1
| db.users.find({"hobby.movies":"英雄"})
|
- 向 唐僧 的文档中,电影 movies 中添加 “寒战”
- 注意此时不要用 $set 修改操作符
- 使用 $push 用于向数组中添加一个新的元素(可重复添加)
- $addToSet 向数组中添加一个元素 (如果添加元素已经存在就不会再去添加了,不可重复添加)
1 2 3 4 5 6 7 8 9 10 11
| db.users.update({username:"唐僧"},{ $push:{ "hobby.movies":"寒战" } })
db.users.update({username:"唐僧"},{ $addToSet:{ "hobby.movies":"寒战" } })
|
- 删除 喜欢 北京 的用户
1
| db.users.remove({"hobby.cities":"北京"})
|
- 删除 users集合
1 2
| db.users.remove({}) db.users.drop()
|