【发布时间】:2018-09-13 10:24:50
【问题描述】:
我用的是mongodb,一个文档格式是这样的:
{
sid:2,
attr:[
{
key:"name",
value:"bike"
},{
key:"weight",
value:"100"
}
]
}
有一个属性“attr”,它就像一个带有不确定键数的地图。 整个集合看起来像这样:
[{
sid:1,
attr:[
{
key:"name",
value:"bike"
}
]
},{
sid:2,
attr:[
{
key:"name",
value:"bike"
},{
key:"weight",
value:"100"
}
]
},{
sid:3,
attr:[
{
key:"color",
value:"red"
},{
key:"weight",
value:"100"
}
]
}]
现在,我想知道有多少个不同的键,它们是什么。 在这个例子中,我期望的不同键应该是:
["name","weight","color"]
但是更多的文档插入到集合中怎么办?这个集合中的数据是不固定的
【问题讨论】:
-
预期的输出应该是什么?
-
@AnthonyWinzlet: ["name","weight","color"]
-
@AnthonyWinzlet 非常感谢。它工作。我会学习 api 并验证它是否准确
-
试试
db.colname.distinct("attr.key") -
我试过了,在我的真实表中得到 57 的结果。数字更多,我需要检查@Veeram