在同一个表上多次选择的休眠条件

时间:2013-03-11 08:42:40

标签: hibernate criteria hibernate-criteria

我有一个案例,我需要找出不同版本的表的相同字段之间的差异。

例如:
我有一个名为BankAccount的表,其中包含

等字段
  

acount_no   ,   平衡   ,   约会等。

现在我想要实现的是基本上在这个表上运行两个不同日期的选择,并找出日期1和日期2的余额字段值之间的差异。

更像是:     a.balance - b.balance as balance_difference

我知道,我可以使用一个作为分离标准来运行两个选择,其中我至少获得两个日期之间的公共记录。我的问题是找到差异并在标准中使用“别名”,因为我以前从未这样做过,并且无法从其他在线资源中理解或收集太多信息。
非常感谢任何帮助,并提前感谢大家。

1 个答案:

答案 0 :(得分:0)

根据我的理解,您希望实现的是hql类似于以下内容的

select (coalesce(case when a.date=?1 and a.account_no=?3 then a.balance end), 0) - coalesce(case when a.date=?2 and a.account_no=?3 then a.balance end), 0) AS balance_difference from BankAccount a