Hibernate标准构建器总和IF条件



sql查询:

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

如何在标准构建器中编写相同的查询:

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

如果条件在标准构建器中,我无法放置。

注意:表有bean类。预先感谢。

显然不支持Hibernate标准。我会考虑仅使用标准或使用HQL或本机SQL进行2个查询。

最新更新