У меня есть объекты-сущности:
@Entity
public class Tag {
@Id
private Long id;
@Transient
private int count;
// getter, setter etc..
}
@Entity
public class Request {
// fileds
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
private Set<Tag> tag = new HashSet<Tag>();
// getter, setter etc..
}
Мне нужно получить все теги с количеством по запросу.
В DAO я создаю для него функцию с SQL-запросом:
select tag as id, count(rt.request) as count
from request_tag rt
where rt.request in (...) and rt.request in (...) and etc...
group by rt.tag order by count desc
Теги найдены, но количество не является обязательным.
Как связать счетчик с запроса?
PS:
Я не хочу удалять аннотацию @Transient (потому что я не хочу вести учет в БД).
Я не хочу использовать @Formula (потому что это будет медленно).