PyMongo - 创建多个索引会引发错误消息
PyMongo - Creating multiple indexes throw an error message
我正在尝试在 MongoDB 中创建多个索引但没有成功
collection.create_index([('text', 'text')])
collection.create_index([('main_text', 'text')])
错误信息
OperationFailure: Index: { v: 2, key: { _fts: "text", _ftsx: 1 }, name: "main_text_text", ns: "5f67b1b60e27eb4ac456ebba_xxxxx.xxxxx", weights: { main_text: 1 }, default_language: "english", language_override: "language", textIndexVersion: 3 } already exists with different options: { v: 2, key: { _fts: "text", _ftsx: 1 }, name: "text_text", ns: "5f67b1b60e27eb4ac456ebba_xxxxx.xxxxx", weights: { text: 1 }, default_language: "english", language_override: "language", textIndexVersion: 3 }
正如评论者所说,你不能有超过 1 个文本索引,但你可以在一个文本索引上有多个字段,这可以在 pymongo 中创建,如下所示:
import pymongo
db.collection.create_index([("text", pymongo.TEXT), ("main_text", pymongo.TEXT)])
我正在尝试在 MongoDB 中创建多个索引但没有成功
collection.create_index([('text', 'text')])
collection.create_index([('main_text', 'text')])
错误信息
OperationFailure: Index: { v: 2, key: { _fts: "text", _ftsx: 1 }, name: "main_text_text", ns: "5f67b1b60e27eb4ac456ebba_xxxxx.xxxxx", weights: { main_text: 1 }, default_language: "english", language_override: "language", textIndexVersion: 3 } already exists with different options: { v: 2, key: { _fts: "text", _ftsx: 1 }, name: "text_text", ns: "5f67b1b60e27eb4ac456ebba_xxxxx.xxxxx", weights: { text: 1 }, default_language: "english", language_override: "language", textIndexVersion: 3 }
正如评论者所说,你不能有超过 1 个文本索引,但你可以在一个文本索引上有多个字段,这可以在 pymongo 中创建,如下所示:
import pymongo
db.collection.create_index([("text", pymongo.TEXT), ("main_text", pymongo.TEXT)])