24

Hibernateの基準を使用して、次と同等のものを実行したいと思います。

select distinct uspscity, state from citycomplete where USPSCITY = 'HOUSTON'

次のことを行うと、希望する結果が得られると思いました。

ProjectionList projList = new ProjectionList();
projList.add(Projections.distinct(Projections.property("id.state")));
projList.add(Projections.distinct(Projections.property("id.uspsCity")));
criteria.setProjection(projList);

しかし、これが実際に行うことは、次のようなものを実行することです。

select distinct uspscity, distinct state from citycomplete where USPSCITY = 'HOUSTON'

明らかに、これはエラーをスローします。

基準を使用しない以外に、これに対する解決策はありますか?

ありがとう、

ブランドン

4

1 に答える 1

55
ProjectionList projList = Projections.projectionList();
projList.add(Projections.property("id.state"));
projList.add(Projections.property("id.uspsCity"));
criteria.setProjection(Projections.distinct(projList));
于 2011-03-04T16:09:12.113 に答える