0

数値フィールドの合計の hibernate create criteria クエリで group by 句を実行しています。別の列が必要です-seriesType出力結果リストのドメインクラスからですが、今property('seriesType') 、grouProperty()行とともにプロジェクションに用語を追加すると、例外が発生しますnot a group by clause could not execute query

わからない ここで結果の他の2つと一緒にそのフィールドを取得するにはどうすればよいですか? これが私の基準です

dataMap = BehaviorProfile.createCriteria().list {
                    globalUser{
                        eq('id',empid2)
                    }

                    projections{
                       sum('frequency', 'tfreq')
                       groupProperty('dayofweek')
                    // if I add property('seriesType') here the criteria throws an exception
                    }

                }
4

1 に答える 1

1

追加する必要はありgroupProperty('seriesType')ませんproperty('seriesType')。いくつかのプロパティAでグループ化し、集計関数(この場合は合計)を使用する場合、Bの操作前にも多くの値が存在する可能性があるため、他のプロパティBをサイドに出力することはできません。

たとえば、dayofweek = 2の集計グループでは、合計は150であり、siereA、serieB、serieCの3つの可能なseriesTypeがあります。そのため、次のいずれかを行う必要があります。曜日のみでグループ化するか、seriesTypesでグループ化してクエリに追加します。

于 2012-04-20T07:50:53.017 に答える