MongoDB ma distinct
polecenie, które zwraca tablicę różnych wartości dla pola; możesz sprawdzić długość tablicy pod kątem liczby.
Istnieje powłoka db.collection.distinct()
również pomocnik:
> db.countries.distinct('country');
[ "Spain", "England", "France", "Australia" ]
> db.countries.distinct('country').length
4
Jak wspomniano w dokumentacji MongoDB:
Wyniki nie mogą być większe niż maksymalny rozmiar BSON (16 MB). Jeśli Twoje wyniki przekraczają maksymalny rozmiar BSON, użyj potoku agregacji, aby pobrać różne wartości za pomocą $group
operatora, jak opisano w Pobieranie odrębnych wartości za pomocą potoku agregacji.