Ruby操作MongoDB(进阶六)-索引Indexing
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Ruby操作MongoDB(进阶六)-索引Indexing,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2104字,纯文字阅读大概需要4分钟。
内容图文
![Ruby操作MongoDB(进阶六)-索引Indexing](/upload/InfoBanner/zyjiaocheng/489/1e0194e56ca347578bbc6ae879afd7c1.jpg)
在本博文中,我们主要介绍数据库索引。主要包含创建索引,删除索引,列出索引
数据库驱动提供了在集合上创建,删除和查看索引的方法。
创建索引
创建索引的操作中,可以一次创建一个索引,也可以一次创建多个索引。在3.0及其以上版本的MongoDB数据库中,多个索引一起创建时是被平行创建出来的。在更早的版本中,多个索引是按照顺序创建的。
单个索引的创建,使用create_one方法
client=Mongo::Client.new([‘127.0.0.1:27017‘],:database=>‘film‘) client[:actors].indexes.create_one({:name=>1},unique:true)
多个索引的创建,使用create_many方法。需要注意的是,当一次创建多个索引时,索引的键值必须按照说明通过对应的特定键值对传递。这是因为每个被创建的索引的参数可能是不同的。
client=Mongo::Client.new([‘127.0.0.1:27017‘],:database=>‘film‘) client[:actors].indexes.create_many([ {:key=>{name:1},unique:true}, {:key=>{label:-1}}])
下面的表中列出了创建索引时可用参数的完整列表
参数 | 参数描述 |
:background | 取值为true或者false,明确索引创建的时候是在后台执行还是前台执行 |
:expire_after | 从当前时间往后,让文档失效的秒数 |
:name | 索引的名字 |
:sparse | 确定索引是否稀疏,要么是true要么是false |
:storage_engine | 定义该索引的存储引擎的名字 |
:version | 使用的索引格式的版本 |
:default_language | 文本索引的默认语言 |
:language_override | 覆盖了默认语言时,使用的域的名字 |
:text_version | 存储文本索引的格式版本 |
:weights | 在文本搜索中指定字段和权重的文档 |
:sphere_version | 2维索引的版本 |
:bits | 2位索引中设定经纬度的最大边界 |
:max | 2维索引的经纬度的最大边界值 |
:min | 2维索引的经纬度的最小边界值 |
:bucket_size | 将geo haystack索引位置值进行分组是适应的单位数 |
:partial_filter_expression | 并行索引表达式过滤器 |
2. 删除索引
删除索引,使用dropOne或dropAll
client=Mongo::Client.new([‘127.0.0.1:27017‘],:database=>‘film‘) client[:bands].index.drop_one(‘name_1‘) client[:bands],drop_all
3. 列出索引
client=Mongo::Client.new([‘127.0.0.1:27017‘],:database=>‘film‘) client[:bands].indexes.each do |index| p index end
本文出自 “techFuture” 博客,谢绝转载!
Ruby操作MongoDB(进阶六)-索引Indexing
标签:index create drop ruby list
本文系统来源:http://wanght89.blog.51cto.com/6778304/1955257
内容总结
以上是互联网集市为您收集整理的Ruby操作MongoDB(进阶六)-索引Indexing全部内容,希望文章能够帮你解决Ruby操作MongoDB(进阶六)-索引Indexing所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。