MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie schreibe ich eine Abfrage, um unterschiedliche Werte aus der Mongodb-Sammlung zu erhalten?

Sie können eine Methode im UserRepository einführen um den eindeutigen firstName abzurufen Feldwerte und geben eine List<String> zurück .

public interface UserRepository extends MongoRepository<User, String> {

    @Aggregation(pipeline = { "{ '$group': { '_id' : '$firstName' } }" })
    List<String> findDistinctFirstNames();
}

Der Aufruf zum Abrufen der Liste der distinct Vornamen:

List<String> firstNamesDistinct = userRepository.findDistinctFirstNames();

Dies hat mit Spring Data MongoDB v2.4 und MongoDB v4.2 gut funktioniert.