JpaRepository Distinct 不适用于多个字段

JpaRepository Distinct doesn't work with more than one field

我的这个查询运行良好

@Query(value = "SELECT DISTINCT taxonomyGroup FROM sagePrices AS sP WHERE sP.brand = :brand AND sP.taxonomyGroup IS NOT NULL", nativeQuery = true)
List<String> findTaxonomyByBrandMatching(String brand);

但是我想用JPARepository。我已经尝试了几个选项,但没有任何效果,我得到了所有正确的记录,但它们仍然重复

这些是我尝试过的几个选项。

List<SagePricesEntity> findTaxonomyGroupDistinctByBrandAndTaxonomyGroupNotNull(String brand);
List<SagePricesEntity> findDistinctTaxonomyGroupByBrandAndTaxonomyGroupNotNull(String brand);
List<SagePricesEntity> findDistinctTaxonomyGroupByTaxonomyGroupNotNullAndBrand(String brand);

有谁知道我想做的事情是否可行?

这是我在使用 JPARepository 查询时得到的响应

[
    {
        "taxonomyGroup": "rtrtr"
    },
    {
        "taxonomyGroup": "rtrtr"
    },
    {
        "taxonomyGroup": "fhfdhfdhdfh"
    },
    {
        "taxonomyGroup": "ydtyjtyjetyj"
    }
]

您必须使用 spring 投影才能仅获取一列值

 interface TaxonomyGroupOnly{
        String getTaxonomyGroup(); 
    }

List<TaxonomyGroupOnly> findDistinctTaxonomyGroupByBrandAndTaxonomyGroupNotNull(String category);

关于 Spring 投影的更多信息 - https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#projections