Невозможно выделить «дочерние элементы» объекта JPA с помощью оператора SELECT DISTINCT в Spring Data - PullRequest
0 голосов
/ 25 мая 2020

Когда я выполняю эту функцию запроса через Spring Data JPA, получается, что результирующий экземпляр category владеет примерно 1051 элементами из children.

 @Query("SELECT c FROM Category c LEFT JOIN FETCH c.children LEFT JOIN FETCH c.specialTypes WHERE c.code = :code")
    fun findByCodeWithEagerChildrenAndEagerUniversalTypes(code: String): Category?

В базе данных указано только 7 tho . Однако я не собираюсь изменять или реорганизовывать конфигурацию всей сущности, а просто хочу DISTINCT дублировать здесь.

 @Query("SELECT DISTINCT c FROM Category c LEFT JOIN FETCH c.children LEFT JOIN FETCH c.specialTypes WHERE c.code = :code")
    fun findByCodeWithEagerChildrenAndEagerUniversalTypes(code: String): Category?

Однако использование SELECT DISTINCT не работает. Есть идеи, почему?

...