2016-03-25 17 views
2

間違っています:休止状態の基準グループのクエリは、私は基準を使用して次のクエリを生成しようとしています

select this_.ORDER_NUMBER as y0_, sum(this_.ORDER_AMOUNT) as y1_, 
    this_.ORDER_NUMBER as y2_, this_.ORDER_DATE as y3_ 
from STOCK.ST_PUR_ORDERS this_ 
group by this_.ORDER_NUMBER, this_.ORDER_DATE; 

質問ORDER_NUMBERフィールドが2回表示されているのはなぜですか?

+0

結果が正しく表示されていますか、結果に実際に重複して表示されていますか? –

+0

実際に結果に重複したデータが表示されるため、そこには3つのプロパティしかないので、私はPurOrderCollクラスにマップできません。 – ErrorNotFoundException

+0

@ErrorNotFoundExceptionあなたのCriteriaには既に 'Projections.groupProperty(" orderNumber ")'があります。私は 'Projections.property(" orderNumber ")の必要性を見ません。それを取り除いて試してみてください。 –

答えて

2

私の質問はなぜORDER_NUMBERフィールドが2回表示されているのですか?

あなたの基準はすでにProjections.groupProperty("orderNumber")です。したがって、生成されたクエリには、その選択句にorderNumberが含まれます。

Projections.property("orderNumber")を明示的に指定する必要はありません。それを取り除いて試してみてください。

同じことは、groupProperty(..)を使用して指定された他のフィールドに適用されます。

+0

私は実際にこの行全体を削除する必要があるように見える '.add(Projections.property(" orderNumber ")、" orderDate ")'それは働いた。 – ErrorNotFoundException

+1

@ErrorNotFoundExceptionそれは本当です。実際には、 'groupProperty(...) 'を指定するとselect節に自動的に含まれます。それを反映する答えを更新しました。 –

+0

この洞察に感謝します。 – ErrorNotFoundException

関連する問題