Mongodb find() 查询:仅返回唯一值(无重复) [英] Mongodb find() query : return only unique values (no duplicates)

查看:22
本文介绍了Mongodb find() 查询:仅返回唯一值(无重复)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一组文件:

{
    "networkID": "myNetwork1",
    "pointID": "point001",
    "param": "param1"
}
{
    "networkID": "myNetwork2",
    "pointID": "point002",
    "param": "param2"
}
{
    "networkID": "myNetwork1",
    "pointID": "point003",
    "param": "param3"
}
...

pointID 是唯一的,但 networkID 不是.

pointIDs are unique but networkIDs are not.

是否有可能以这样的方式查询 Mongodb,结果将是:[myNetwork1,myNetwork2]

Is it possible to query Mongodb in such a way that the result will be : [myNetwork1,myNetwork2]

现在我只能返回 [myNetwork1,myNetwork2,myNetwork1]

right now I only managed to return [myNetwork1,myNetwork2,myNetwork1]

我需要一个唯一的 networkID 列表来填充自动完成的 select2 组件.由于我可能有多达 50K 个文档,我更喜欢 mongoDb 在查询级别过滤结果.

I need a list of unique networkIDs to populate an autocomplete select2 component. As I may have up to 50K documents I would prefer mongoDb to filter the results at the query level.

推荐答案

我觉得你可以用 db.collection.distinct(fields,query)

您将能够在您的案例中获得 NetworkID 的不同值.

You will be able to get the distinct values in your case for NetworkID.

应该是这样的:

db.collection.distinct('NetworkID')

这篇关于Mongodb find() 查询:仅返回唯一值(无重复)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆