如何使用正则表达式创建索引显示所有字段

How can I create an index show all fields using regex

我想在 mongodb 中创建索引以显示 value = xyz

中的所有字段

我是索引新手。有办法吗?

我可以做类似的事情吗:

browser: /^Amazon /i

处创建索引

抱歉,我知道这个问题有歧义,但还不确定如何使用索引。

如果您为 browser 字段创建索引,那么是的,它会在您搜索 browser: /^Amazon/ 或类似内容时帮助您。请记住,仅当正则表达式以 ^ 开头并在其后包含一些静态文本时才使用索引 (如您的示例 /^Amazon/)。

假设您的集合名为 myCollection(请将其重命名为您自己的!)然后您可以按以下方式创建索引:

db.myCollection.createIndex({ browser: 1 })

您可以将索引视为字典。如果我让你打开一些字典(我的意思是真正的纸质书,语言字典)并找到所有以 "Amaz" 开头的单词(比如 /^Amaz/),那么你可以很快完成。相反,如果我让你找到所有以 "Amaz" 结尾的单词(/Amaz$/),或者中间包含 "Amaz" 的单词(/Amaz/),你会花费很长时间,因为你必须检查字典中的所有单词并进行检查。 Mongo 的工作方式类似 :)