假设我有一个Student
集合:
{
name: "ABC",
age: 10,
address {
city: "CITY1",
state: "STATE",
}
}
{
name: "DEF",
age: 11,
address {
city: "CITY2",
state: "STATE",
}
}
{
name: "ABC",
age: 12,
address {
city: "CITY1",
state: "STATE",
}
}
我可以从列表中获取所有唯一City
值的列表吗?例如,通过以上3个文档,我想获得列表{"CITY1", "CITY2"}
我刚从关系数据库开始使用MongoDB,所以这对我来说有点困惑,因为我需要另一个地址表,我可以使用SELECT DISTINCT
来获得我想要的东西。
答案 0 :(得分:3)
MongoDB有一个类似的db.collection.distinct()命令。
要访问address
子文档中的元素,您需要使用dot notation,因此完整的查询将是:
db.Student.distinct("address.city")
一些有用的文档链接,可帮助您从SQL查询进行翻译:
答案 1 :(得分:0)