2011-08-09 2 views
3

私はこのJPA-クエリ(のEclipseLink)を使用していますでユニークな結果を得るために:はどのようにJPA

SELECT e FROM Entity e GROUP BY e.label 

しかし、私は唯一のユニークなラベルの代わりに私の結果のすべての行を取得します。

私は個別の値をカウントし、他の機能で正常に行ったように私の第二のアプローチは、DISTINCT使用していましたが、私はエンティティを取得するためにこれを適用する方法がわからない:Hibernate JP-QL documentationから

SELECT COUNT(DISTINCT e.label) FROM Entity e 
+1

grouは。同じラベルを持つ複数のエンティティオブジェクトがある場合、どちらを返すか? – Kal

+0

私は最初のクエリにも驚いています。何を選択しますか? –

+0

同じラベルのエンティティを選択したい –

答えて

2

を:

select distinct e.label from Entity e 

しかし、私は考えられない完全なエンティティを望んでいるようです。

+0

私はこのようなクエリを使用して終了しました。そして、別のクエリを実行して、特定のラベルを持つすべてのエンティティを取得します。 –

1

実際、それは例えば、可能である:集計関数であることによって

@NamedQuery(name = "WorkingDay.WorkersAtADay", query = "SELECT DISTINCT w.worker FROM WorkingDay w WHERE w.date = :Date"), 
関連する問題