Você pode introduzir um método no
UserRepository
para recuperar o distinto firstName
valores de campo e retornar um List<String>
. public interface UserRepository extends MongoRepository<User, String> {
@Aggregation(pipeline = { "{ '$group': { '_id' : '$firstName' } }" })
List<String> findDistinctFirstNames();
}
A chamada para obter a lista de distintos primeiro nome:
List<String> firstNamesDistinct = userRepository.findDistinctFirstNames();
Isso funcionou bem usando Spring Data MongoDB v2.4 e MongoDB v4.2.