为了账号安全,请及时绑定邮箱和手机立即绑定
没有看清楚的不要抱怨,自己去翻看文档,不要一味“拿来主义”

单键索引的值为一个单一的值,多键索引的值有多个数据(如数组)
如果mongoDB中插入数组类型的多键数据,索引是自动建立的,无需刻意指定
注意:从 mongoDB 3.0 开始,ensureIndex 被废弃,今后都仅仅是 createIndex 的一个别名。
注意:从 mongoDB 3.0 开始,ensureIndex 被废弃,今后都仅仅是 createIndex 的一个别名。
注意:从 mongoDB 3.0 开始,ensureIndex 被废弃,今后都仅仅是 createIndex 的一个别名。
MongoDB使用 ensureIndex() 方法来创建索引
key 为你要创建的索引字段,1为按升序创建索引,-1为按降序创建索引。
也可以设置使用多个字段创建索引(关系型数据库中称作复合索引)
db.col_name.ensureIndex({key:1})
删除集合中所有文档:
db.col.remove({})

移除 col_1 集合中 title 为 MongoDB save 的文档,只删除第一条找到的记录:
db.col_1.remove({'title':'MongoDB save'}, 1)
db.col_name.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
MongoDB 使用 update() 和 save() 方法来更新集合中的文档。
update() 方法用于更新已存在的文档。
save() 方法通过传入的文档来替换已有文档。

强烈建议大家先看一看文档,如:http://www.runoob.com/mongodb/mongodb-tutorial.html
find() 方法,它返回集合中所有文档。
findOne() 方法,它只返回一个文档。

格式化输出:`db.col_name.find().pretty()`
查看集合中文档的个数:`db.col_name.find().count()`
跳过输出文档数:`db.col_name.find().skip()`
限制输出文档数:`db.col_name.find().limit()`
排序:`db.col_name.find().sort()`
我这里的$minDistance可以使用
v表示version,在Mongo3.2之前的版本中,会存在{v:0}(版本锁为0)的情况。在3.2之后的版本中,{v:0}不再允许使用,详见官方文档version 0 indexes。
(然而这部分阔以不去关注,因为v由系统自动管理)
key表示作为索引的键。1或-1表示排序模式,1为升序,1为降序
name表示索引的名字,默认生成名称的规则是作为索引的字段_排序模式。所以"key": {"ID": 1}会产生名称"name": "ID_1"。
ns表示name space命名空间,由数据库名称.集合名称组成。
## 重要概念

### 1. database 数据库

多个集合逻辑上组织在一起,就是数据库。

### 2. collection 集合

多个文档组成一个集合,相当于关系数据库的表。

### 4. document 文档

MongoDB 将数据存储为一个文档,数据结构由键值对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
完全没有使用老师的方法安装配置,不能在命令行开启,还得通过在命令行里services.msc打开服务,手动鼠标开启MongoDB服务,才能正常使用,表示很心累。

老师讲的真的很好,如果要是有windows的安装配置就完美了!!!加油,继续学!!!
是讲错了吗?按照db.collections.insert({x:[1,2,3]})
1.getIndexes()并未返回,必然是没有新建索引;

2.官方文档说:当索引的字段是数组时候,才会"自动的给数组内字段的每一个元素"设置索引,这才是多key索引,自动指的是给数组内部的元素自动设置;

3.方法:db.collections.createIndex({x:1});必须要给数组设置索引,才是多key索引。

老师漏了文档上的好多,建议看直接看中文文档。
注意新版本的单键索引变为了db.imooc_collections.createIndex( { x: 1 } )
这有中文社区的手册,看一遍就会了:http://docs.mongoing.com/manual-zh/core/index-single.html
推荐新版本.
看了同学的评论,吓得我赶紧使用了windows...
课程须知
1、对数据库的概念有比较清晰的认识。 2、了解一些简单的shell操作。
老师告诉你能学到什么?
1、了解mongoDB的特性 2、掌握mongoDB的基本操作 3、了解mongoDB在业务层的使用,并学会使用mongoDB来进行应用开发

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消