JPQL-запрос - порядок по вложенному полю - PullRequest
0 голосов
/ 02 января 2019

Учитывая класс OP

public class OP {
  String name;
  int rank;
}

и класс D

public class D {
  OP parameter; 
}

Каким должен быть запрос, написанный на JPQL, в котором перечислены экземпляры класса D, упорядоченные по rank поле OP класса.Экземпляры с нулевыми ссылками на OP объекты должны быть перечислены в конце.

1 Ответ

0 голосов
/ 02 января 2019

После некоторых тестов мне удалось заставить все работать.Вот как я реализовал это с помощью Spring Repository:

@Repository
public interface DRepository extends CrudRepository<D, Long> {

    @Query("select d from D d left outer join d.parameter op order by op.rank desc")
    List<D> getDs();

}

Обратите внимание на left outer join для включения D экземпляров с нулевым полем parameter и desc после предложения order byзаставить экземпляры с нулевым OP до конца списка.

...