我想用Criterias执行此查询,但似乎没有按预期工作:
SELECT DISTINCT descripcion, id, familia_id, numero_departamento FROM familia WHERE familia_id IS NULL GROUP BY descripcion;
我试过这个
public List getFamiliasPadre() {
Criteria cri = getSession().createCriteria(Familia.class);
cri.add(Restrictions.isNull("familia.id")).setProjection(Projections.distinct(Projections.property("descripcion")))
.setProjection(Projections.groupProperty("descripcion"));
return cri.list();
}
但它会返回一个结果,就像我执行此查询一样
SELECT DISTINCT descripcion FROM familia WHERE familia_id IS NULL GROUP BY descripcion;
它只返回列描述。
我的问题是,我如何告诉Hibernate我想要我的表的所有列,但我不想重复描述列中的vaules?
答案 0 :(得分:0)
在纯SQL查询中你无法做到这一点。我的意思是,你怎么可能合并只共享一列的2行?例如,假设这是你的表:
DISTINCT无法仅应用于一列而将其余列放在一边,因为您希望这两行只有一行。