gpt4 book ai didi

mongodb - 获取 MongoDB 文档中唯一嵌入/嵌套对象的列表

转载 作者:行者123 更新时间:2023-12-01 23:24:03 26 4
gpt4 key购买 nike

考虑以下 MongoDB“食谱”集合:

{
"title" : "Macaroni and Cheese",
"ingredients" : [
{ "name" : "noodles", "qty" : "2 c" },
{ "name" : "butter", "qty" : "2 tbl" },
{ "name" : "cheese", "qty" : "1 c" },
]
},
{
"title" : "Pound Cake",
"ingredients" : [
{ "name" : "sugar", "qty" : "1 lb" },
{ "name" : "butter", "qty" : "1 lb" },
{ "name" : "flour", "qty" : "1 lb" },
]
},
{
"title" : "Dough",
"ingredients" : [
{ "name" : "water", "qty" : "2 c" },
{ "name" : "butter", "qty" : "8 tbl" },
{ "name" : "flour", "qty" : "1 lb" },
]
}

我希望编写一个查询来生成要购买的元素的“购物 list ”以制作所有食谱。所以我基本上想返回配料“面条”,“黄油”,“奶酪”,“糖”,“黄油”,“面粉”,“水”。我不想要重复的。 (例如,糖和黄油出现在多个食谱中,但我只想将它们返回一次,即不重复。)

是否可以在 MongoDB 中创建这样的查询?如果可以,该查询会是什么?或者是否需要我为“成分”创建一个单独的集合?

最佳答案

使用distinct查找ingredients.name的不同值数组

db.recipes.distinct('ingredients.name')

产量[“黄油”、“奶酪”、“面条”、“面粉”、“糖”、“水”]

关于mongodb - 获取 MongoDB 文档中唯一嵌入/嵌套对象的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19923536/

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