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

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert