gpt4 book ai didi

node.js - 在 mongoose 中使用 mongodb 多键索引方法索引引用数组

转载 作者:可可西里 更新时间:2023-11-01 10:00:58 29 4
gpt4 key购买 nike

我的模式有一个 ObjectIds 数组,它们是另一个模式的引用。我想要的是使用 mongodb 的多键索引方法索引这个数组条目。因此,给定 ProductCat 集合中某个文档的 ObjectId,我可以列出我当前集合中具有给定 ObjectId 的所有文档_pro_cat 字段。

我对在 mongoose 模式声明中声明字段的确切方式感到困惑,这是我正在尝试的:

_pro_cat: { type: [mongoose.Schema.Types.ObjectId], ref: 'ProductCat', index: true }

_pro_cat: [{ type: mongoose.Schema.Types.ObjectId, ref: 'ProductCat', index: true }]

此集合的名称是 Seller。我通过使用架构中的引用来建立关系,实际字段值是一个数组,每个类型都是 ObjectId,这将是另一个集合(在本例中为 ProductCat)中文档的 ObjectId。如果我索引这个字段,即 _pro_cat,然后给定 ProductCat 集合中文档的 ObjectId,我将能够在 Seller 集合中找到在其数组字段 _pro_cat 中给出 ObjectId 的所有文档。

我想我可能需要调用一个单独的索引函数。但我认为这是字段级索引,因此可能不需要。

我怀疑后者仅适用于子文档而不适用于引用文献。如果有人能对此有所了解,将不胜感激。谢谢。

附带问题:[已解决]在 mongodb 文档中,它说多键索引是自动的。 multikey indexing .这是否意味着如果使用上述方法对该字段进行了索引,那么 mongo 将识别该字段是一个数组并使用多键索引。或者这是否意味着所有数组类型的字段都将被索引,而不需要明确地告诉它索引。

非常感谢。

related

最佳答案

Multikey Indexing 意味着 如果您告诉 mongo 为字段编制索引,则数组字段中的每个项目都会被编制索引。

并不意味着所有数组字段都自动索引,无需明确告诉 mongo 索引该字段。

关于node.js - 在 mongoose 中使用 mongodb 多键索引方法索引引用数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21376018/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com