前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Pymongo:index索引相关操作总结

Pymongo:index索引相关操作总结

作者头像
新码农
修改2020-12-25 10:54:13
3.5K0
修改2020-12-25 10:54:13
举报
文章被收录于专栏:新码农博客

导读

简单总结一下pymongo中与index操作相关一些函数。

简单总结一下pymongo中与index操作相关一些函数, 常用的有:

代码语言:txt
复制
create_index
drop_index
index_information

最主要的是create_index, 可以用它来为mongo的collection建立索引。

以下操作一些简单的例子,代码如下:

代码语言:txt
复制
import pymongo as pm

client = pm.MongoClient(
    "mongodb://user:password@127.0.0.1:27017",
    ssl=True,
    ssl_ca_certs="/tmp/mongo_local.pem",
)

db = client["my_db"]

collection = db["my_collection"]

# 获得已有索引
print([x for x in dir(collection) if "index" in x])

# 创建索引
collection.create_index([("x", 1)], unique=True, background=True)

# 获得索引帮助
help(collection.create_index)

# 获得索引信息
collection.index_infomation()

# 根据索引说明符删除索引
collection.drop_index([("x", 1)])

# 根据索引名称删除索引
collection.drop_index("idx_x")

# 使用多个字段创建索引
collection.create_index([("x", 1), ("y", 1)])

语法中(‘x’,1), x 值为要创建的索引字段名,1为指定按升序创建索引,可以用pymongo.ASCENDING代替。如果你想按降序来创建索引,则指定为 -1 或 pymongo.DESCENDING。

在使用create_index()创建索引时,也可指定特定的参数(options),常用可选参数如下:

  • background:boolean

建索引过程会阻塞其它数据库操作,background可指定以后台方式创建索引,即增加 “background” 可选参数。 “background” 默认值为False。

  • unique:boolean

建立的索引是否唯一。指定为True来创建唯一索引。默认值为False.默认情况下,MongoDB在创建集合时会生成唯一索引字段_id。

  • name:string

索引的名称。如果未指定,MongoDB的通过连接索引的字段名和排序顺序生成一个索引名称。例如create_index((‘x’,1)在不指定name时会生成默认的索引名称 ‘x_1’。

  • expireAfterSeconds:integer

指定一个以秒为单位的数值,完成TTL设定,设定集合的生存时间。需要在值为日期或包含日期值的数组的字段的创建。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020年12月22日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 导读
相关产品与服务
云数据库 MongoDB
腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档