key-value 中,key 此时为 `$**`(也可以是具体某 key),value 此时为一个固定的字符串(如 `text`)
注意:
- 每个集合只能创建一个全文索引
- MongoDB 从 2.4 版本开始支持全文检索,目前支持15种语言(暂时不支持中文)的全文索引。
- (好像)只能对整个单词查询,不能对单词的截取部分查询
- 关键词之间的空格表示`或`
- 关键词之钱的 - 表示`非`
- 关键词加引号表示`与` (需用 \ 转义)
注意:
- 每个集合只能创建一个全文索引
- MongoDB 从 2.4 版本开始支持全文检索,目前支持15种语言(暂时不支持中文)的全文索引。
- (好像)只能对整个单词查询,不能对单词的截取部分查询
- 关键词之间的空格表示`或`
- 关键词之钱的 - 表示`非`
- 关键词加引号表示`与` (需用 \ 转义)
2017-07-12
全文索引
场景:全网站关键词搜索
key-value 中,key 此时为 `$**`,value 此时为一个固定的字符串
场景:全网站关键词搜索
key-value 中,key 此时为 `$**`,value 此时为一个固定的字符串
2017-07-12
全文索
场景:全网站关键词搜索
key-value 中,key 此时为 `&**`,value 此时为一个固定的字符串
场景:全网站关键词搜索
key-value 中,key 此时为 `&**`,value 此时为一个固定的字符串
2017-07-12
### 过期索引
又称 TTL(Time To Live,生存时间)索引,即在一段时间后会过期的索引(如登录信息、日志等)
过期后的索引会连同文档一起删除
expireAfterSeconds:指定一个以秒为单位的数值,设定集合的生存时间。
又称 TTL(Time To Live,生存时间)索引,即在一段时间后会过期的索引(如登录信息、日志等)
过期后的索引会连同文档一起删除
expireAfterSeconds:指定一个以秒为单位的数值,设定集合的生存时间。
2017-07-12
注意:
- 存储在过期索引字段的值必须是指定的时间类型(必须是 ISODate 或 ISODate 数组,不能使用时间戳,否则不能被自动删除)
- 如果指定了 ISODate 数组,则按照最小的时间进行删除
- 过期索引不能是复合索引(不能指定两个过期时间)
- 删除时间存在些许误差(1 分钟左右)
- 存储在过期索引字段的值必须是指定的时间类型(必须是 ISODate 或 ISODate 数组,不能使用时间戳,否则不能被自动删除)
- 如果指定了 ISODate 数组,则按照最小的时间进行删除
- 过期索引不能是复合索引(不能指定两个过期时间)
- 删除时间存在些许误差(1 分钟左右)
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
@weixin_solorhyme_03283852 当数据量大时,不创建会严重影响查询性能
复合索引即同时对多个字段创建索引
db.col_2.insert({x:10,y:20,z:30})
db.col_2.createIndex({x:1,y:1})
db.col_2.getIndexes()
同时对多个字段创建索引
复合索引即同时对多个字段创建索引
db.col_2.insert({x:10,y:20,z:30})
db.col_2.createIndex({x:1,y:1})
db.col_2.getIndexes()
同时对多个字段创建索引
2017-07-12
没有看清楚的不要抱怨,自己去翻看文档,不要一味“拿来主义”
单键索引的值为一个单一的值,多键索引的值有多个数据(如数组)
如果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