没有看清楚的不要抱怨,自己去翻看文档,不要一味“拿来主义”
单键索引的值为一个单一的值,多键索引的值有多个数据(如数组)
如果mongoDB中插入数组类型的多键数据,索引是自动建立的,无需刻意指定
单键索引的值为一个单一的值,多键索引的值有多个数据(如数组)
如果mongoDB中插入数组类型的多键数据,索引是自动建立的,无需刻意指定
2017-07-12
注意:从 mongoDB 3.0 开始,ensureIndex 被废弃,今后都仅仅是 createIndex 的一个别名。
注意:从 mongoDB 3.0 开始,ensureIndex 被废弃,今后都仅仅是 createIndex 的一个别名。
注意:从 mongoDB 3.0 开始,ensureIndex 被废弃,今后都仅仅是 createIndex 的一个别名。
注意:从 mongoDB 3.0 开始,ensureIndex 被废弃,今后都仅仅是 createIndex 的一个别名。
注意:从 mongoDB 3.0 开始,ensureIndex 被废弃,今后都仅仅是 createIndex 的一个别名。
2017-07-12
MongoDB使用 ensureIndex() 方法来创建索引
key 为你要创建的索引字段,1为按升序创建索引,-1为按降序创建索引。
也可以设置使用多个字段创建索引(关系型数据库中称作复合索引)
db.col_name.ensureIndex({key:1})
key 为你要创建的索引字段,1为按升序创建索引,-1为按降序创建索引。
也可以设置使用多个字段创建索引(关系型数据库中称作复合索引)
db.col_name.ensureIndex({key:1})
2017-07-12
删除集合中所有文档:
db.col.remove({})
移除 col_1 集合中 title 为 MongoDB save 的文档,只删除第一条找到的记录:
db.col_1.remove({'title':'MongoDB save'}, 1)
db.col.remove({})
移除 col_1 集合中 title 为 MongoDB save 的文档,只删除第一条找到的记录:
db.col_1.remove({'title':'MongoDB save'}, 1)
2017-07-10
db.col_name.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
2017-07-10
MongoDB 使用 update() 和 save() 方法来更新集合中的文档。
update() 方法用于更新已存在的文档。
save() 方法通过传入的文档来替换已有文档。
强烈建议大家先看一看文档,如:http://www.runoob.com/mongodb/mongodb-tutorial.html
update() 方法用于更新已存在的文档。
save() 方法通过传入的文档来替换已有文档。
强烈建议大家先看一看文档,如:http://www.runoob.com/mongodb/mongodb-tutorial.html
2017-07-10
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()`
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()`
2017-07-10
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命名空间,由数据库名称.集合名称组成。
(然而这部分阔以不去关注,因为v由系统自动管理)
key表示作为索引的键。1或-1表示排序模式,1为升序,1为降序
name表示索引的名字,默认生成名称的规则是作为索引的字段_排序模式。所以"key": {"ID": 1}会产生名称"name": "ID_1"。
ns表示name space命名空间,由数据库名称.集合名称组成。
2017-07-10
## 重要概念
### 1. database 数据库
多个集合逻辑上组织在一起,就是数据库。
### 2. collection 集合
多个文档组成一个集合,相当于关系数据库的表。
### 4. document 文档
MongoDB 将数据存储为一个文档,数据结构由键值对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
### 1. database 数据库
多个集合逻辑上组织在一起,就是数据库。
### 2. collection 集合
多个文档组成一个集合,相当于关系数据库的表。
### 4. document 文档
MongoDB 将数据存储为一个文档,数据结构由键值对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
2017-07-10
是讲错了吗?按照db.collections.insert({x:[1,2,3]})
1.getIndexes()并未返回,必然是没有新建索引;
2.官方文档说:当索引的字段是数组时候,才会"自动的给数组内字段的每一个元素"设置索引,这才是多key索引,自动指的是给数组内部的元素自动设置;
3.方法:db.collections.createIndex({x:1});必须要给数组设置索引,才是多key索引。
老师漏了文档上的好多,建议看直接看中文文档。
1.getIndexes()并未返回,必然是没有新建索引;
2.官方文档说:当索引的字段是数组时候,才会"自动的给数组内字段的每一个元素"设置索引,这才是多key索引,自动指的是给数组内部的元素自动设置;
3.方法:db.collections.createIndex({x:1});必须要给数组设置索引,才是多key索引。
老师漏了文档上的好多,建议看直接看中文文档。
2017-07-05
这有中文社区的手册,看一遍就会了:http://docs.mongoing.com/manual-zh/core/index-single.html
2017-07-05