Mongodb find() query : return only unique values (no duplicates)

MongodbMongodb Query

Mongodb Problem Overview


I have a collection of documents :

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

pointIDs are unique but networkIDs are not.

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

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

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.

Mongodb Solutions


Solution 1 - Mongodb

I think you can use db.collection.distinct(fields,query)

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

It should be something like this :

db.collection.distinct('NetworkID')

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionFrancklView Question on Stackoverflow
Solution 1 - MongodbLaura UzcateguiView Answer on Stackoverflow