Можете да въведете метод в UserRepository
за извличане на отделния firstName
стойности на полето и връща List<String>
.
public interface UserRepository extends MongoRepository<User, String> {
@Aggregation(pipeline = { "{ '$group': { '_id' : '$firstName' } }" })
List<String> findDistinctFirstNames();
}
Извикването за получаване на списъка с различни първи имена:
List<String> firstNamesDistinct = userRepository.findDistinctFirstNames();
Това работи добре с помощта на Spring Data MongoDB v2.4 и MongoDB v4.2.