Mongodb: so zählen sie unterschiedliche werte in einem feld
Sie können die folgenden Methoden verwenden, um unterschiedliche Werte in einem bestimmten Feld in MongoDB zu zählen:
Methode 1: Suchen Sie eine Liste unterschiedlicher Werte
db.collection.distinct( 'field_name' )
Methode 2: Ermitteln Sie die Anzahl der unterschiedlichen Werte
db.collection.distinct( 'field_name' ).length
Die folgenden Beispiele zeigen, wie die einzelnen Methoden mit einem Inkassoteam mit den folgenden Dokumenten verwendet werden:
db.teams.insertOne({team: " Mavs ", position: " Guard ", points: 31 }) db.teams.insertOne({team: " Mavs ", position: " Guard ", points: 22 }) db.teams.insertOne({team: " Rockets ", position: " Center ", points: 19 }) db.teams.insertOne({team: " Rockets ", position: " Forward ", points: 26 }) db.teams.insertOne({team: " Cavs ", position: " Guard ", points: 33 })
Beispiel 1: Suchen Sie eine Liste unterschiedlicher Werte
Wir können den folgenden Code verwenden, um eine Liste unterschiedlicher Werte im Feld „Team“ zu finden:
db.teams.distinct( 'team' )
Diese Abfrage gibt das folgende Ergebnis zurück:
['Cavs', 'Mavs', 'Rockets']
Das Ergebnis zeigt die drei eindeutigen Teamnamen aller Dokumente.
Wir könnten auch den folgenden Code verwenden, um eine Liste unterschiedlicher Werte im Feld „Position“ zu finden:
db.teams.distinct( 'position' )
Diese Abfrage gibt das folgende Ergebnis zurück:
['Center', 'Forward', 'Guard']
Hinweis : MongoDB sortiert unterschiedliche Werte standardmäßig alphabetisch.
Beispiel 2: Ermitteln Sie die Anzahl der eindeutigen Werte
Wir können den folgenden Code verwenden, um die Anzahl der unterschiedlichen Werte im Feld „Team“ zu zählen:
db.teams.distinct( 'team' ).length
Diese Abfrage gibt das folgende Ergebnis zurück:
3
Dies sagt uns, dass es im Feld „Team“ drei unterschiedliche Werte gibt.
Wir können auch den folgenden Code verwenden, um die Anzahl der eindeutigen Werte im Feld „Punkte“ zu zählen:
db.teams.distinct( 'points' ).length
Diese Abfrage gibt das folgende Ergebnis zurück:
5
Dies sagt uns, dass es im Feld „Punkte“ 5 verschiedene Werte gibt.
Hinweis : Die vollständige Dokumentation für die separate Funktion finden Sie hier .
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere gängige Vorgänge in MongoDB ausführen:
MongoDB: So gruppieren und zählen
MongoDB: So gruppieren Sie nach mehreren Feldern
MongoDB: So finden Sie den Maximalwert in einer Sammlung