2017-09-22 4 views
1

SQL QUERY:somme constructeur de critères hiberner en si la condition

SELECT SUM(IF(table.type='type1', 1, 0)) as type1,SUM(IF(table.type='type2', 1, 0)) as type2 from table; 

Comment écrire même requête dans les critères constructeur comme ci-dessous:

CriteriaBuilder builder = entityManager.getCriteriaBuilder(); 
CriteriaQuery<Object[]> criteria = builder.createQuery(Object[].class); 
Root<Table> root = criteria.from(Table.class); 
criteria.multiselect(builder.sum()) 

Je suis incapable de placer si la condition dans le constructeur de critères.

Remarque: il existe une classe de haricots pour Table. Merci d'avance.

Répondre