Mongodb 如何在Mongo DB中维护集合?
我希望我的数据库集合采用以下格式:Mongodb 如何在Mongo DB中维护集合?,mongodb,Mongodb,我希望我的数据库集合采用以下格式: Collection(id,<Set of String>). 集合(id,)。 在mongo db官方文档中,我找不到设置的数据结构。以下是官方文件的参考: 维护集合数据结构的原因是,如果我尝试在集合中为任何键添加重复值,则不应添加该值。BSON中没有专用的集合类型 但是,MongoDB有一个数组更新操作符,它将数组视为一个集合。方法a:将其作为一个子对象实现,其中只有键重要,值不相关: { "_id":ObjectId(whatev
Collection(id,<Set of String>).
集合(id,)。
在mongo db官方文档中,我找不到设置的数据结构。以下是官方文件的参考:
维护集合数据结构的原因是,如果我尝试在集合中为任何键添加重复值,则不应添加该值。BSON中没有专用的集合类型
但是,MongoDB有一个数组更新操作符,它将数组视为一个集合。方法a:将其作为一个子对象实现,其中只有键重要,值不相关:
{
"_id":ObjectId(whatever),
"set": {
"Apple":true,
"Banana":true,
"Bob Ate My Sandwich":true,
"Kiwi":true,
"TheAnswerToLiveTheUniverseAndEverything":true
}
}
方法B:使用字符串数组表示集合,并使用运算符添加值。这不正是相关列上的唯一索引所要执行的吗?@fvu在本例中,没有。方法A比方法B有什么好处?@SylvainLeroux A因为多余的值而有更多的开销,并且不是索引友好型的,但是更简单,因为添加重复项是不可能的。$addToSet是我正在寻找的。谢谢@Philipp