【发布时间】:2021-12-14 16:34:15
【问题描述】:
我正在使用一个数据集在 MongoDB 上进行查询,该数据集包含 id、city、locations(as loc) population(as pop) 和 state。并且数据包含冗余值(城市重复)。我必须提取特定州的独特城市,但我不确定我的查询有什么问题。这是我的查询db.zipcodes.aggregate([{$match:{state:"NY"}},{$group:{_id:null, city:{$addToSet:"$city"},count:{$sum:1}}}])它没有删除重复的城市。
【问题讨论】:
-
您的意思是
city数组在输出中有重复项? -
城市不是数组。但是存在具有相同城市名称的记录。
-
就 mongo 而言,没有重复项。仅仅因为两个文档有一个相似的字段并不能使它们相等(也就是重复)。您要查找的输出是什么?
-
addToSet 操作将创建一个数组
标签: mongodb