1

我有以下问题,也许有人可以帮助我。

我写了一个 SQL 查询:

SELECT v.bezeichnung, count(*) as total  
FROM veranstaltung v 
    JOIN  auffuehrung a  ON  v.id = a.veranstaltung_id
    JOIN  platz p  ON p.auffuehrung_id = a.id
    JOIN   transaktion t ON t.id = p.transaktion_id  
WHERE t.status = 2 AND (a.datumuhrzeit + 30 DAY) >= CURRENT_DATE  
GROUP BY v.bezeichnung  
ORDER BY total DESC

我必须在 JPA 中实现它,但除了 GROUP BY 之外一切正常......它不能被分组..

CriteriaBuilder builder = this.entityManager.getCriteriaBuilder();  
CriteriaQuery<Veranstaltung> query = builder.createQuery(Veranstaltung.class);  
Root<Veranstaltung> rootVeranstaltung = query.from(Veranstaltung.class);                        query.where(builder.equal(rootVeranstaltung.join("auffuehrungen").join("plaetze").join("transaktion").<Transaktionsstatus>get("status"), Transaktionsstatus.BUCHUNG));  
query.groupBy(rootVeranstaltung);  
List<Veranstaltung> result = this.entityManager.createQuery(query).getResultList();  
return list;

我还没有完成代码,例如 COUNT.. 我应该COUNT以前写过GROUP BY还是没有它可以工作COUNT

4

0 回答 0