📅  最后修改于: 2023-12-03 14:51:02.536000             🧑  作者: Mango
在 MongoDB 中,要找到不同的值有几种方法,我们可以使用聚合管道或使用.distinct()函数。下面分别介绍这两种方法:
我们可以使用聚合管道中的$group操作符来找到不同的值。使用$group操作符可以将文档按照指定的键进行分组,然后使用$addToSet操作符将分组后的文档中指定的键对应的值加入到一个set中,最终返回一个包含不同值的set。例如,下面的聚合管道将找到collection中的所有不同的age值:
db.collection.aggregate([
{ $group: { _id: "$age", uniqueValues: { $addToSet: "$age" } } }
])
返回结果可能如下所示:
{
"_id": null,
"uniqueValues": [ 25, 30, 35 ]
}
另一个找到不同值的方法是使用MongoDB提供的.distinct()函数。这个函数可以接收一个键名作为参数,并返回这个键名对应的所有不同值。例如,下面的代码将返回collection中所有不同的age值:
db.collection.distinct("age")
返回结果可能如下所示:
[ 25, 30, 35 ]
无论是使用聚合管道还是使用.distinct()函数,都可以轻松地找到MongoDB中的不同值。