2011-07-02 33 views
2

我有一个代表金额的复合用户类型。这种类型跨越两列。复合用户类型上的聚合函数

-Amount 
-Currency 

当我创建使用该复合用户键入则抛出异常的性质进行像“平均”集合函数的HQL查询。原因似乎是AvgFunction不能使用具有多列的类型。

有什么办法在集合函数中使用CompositeUserType?

提前感谢和问候
的Stathis ALEXOPOULOS

+0

你能告诉我们你的查询吗? –

+0

从billBean中选择平均(bill.fullAmount)作为账单 –

回答

2

您的查询没有太大的意义。这三行的平均值是多少?

amount currency 
5   USD 
10  EUR 
15  YEN 

您可以平均金额和忽视货币:

select avg(bill.fullAmount.amount) from BillBean as bill 

,但你不能在平均货币金额(即元组[金额,币种])。

+0

非常感谢提示。 Hibernate识别了属性的数量。 –