我有一个代表货币金额的复合用户类型。这种类型跨越两列。
-Amount
-Currency
当我创建一个 HQL 查询,该查询使用此复合用户类型对属性执行聚合函数(如“avg”)时,抛出异常。原因似乎是 AvgFunction 不能对具有多列的类型进行操作。
有什么方法可以在聚合函数中使用 CompositeUserType 吗?
提前致谢并致以最诚挚的问候
斯塔西斯·亚历克索普洛斯
最佳答案
您的查询没有多大意义。这三行的平均值是多少?
amount currency
5 USD
10 EUR
15 YEN
您可以计算金额的平均值并忽略货币:
select avg(bill.fullAmount.amount) from BillBean as bill
但您不能计算货币金额的平均值(即元组 [金额,货币])。
关于java - 复合用户类型的聚合函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6558582/