Hibernate Criteria内部连接查询

时间:2015-08-12 04:32:02

标签: java hibernate

是否有人知道如何使用Hibernate Criteria编写以下sql查询:

select log1.Status, nm.TransactionId,* from NonMemberTransaction nm
inner join
(
    SELECT status,NonMemberTransactionId
    FROM MessagingLog m1
    WHERE CreatedDate = (select max(CreatedDate) from MessagingLog m2 where m1.NonMemberTransactionId=m2.NonMemberTransactionId)
) log1
on nm.TransactionId=log1.NonMemberTransactionId

由于

1 个答案:

答案 0 :(得分:0)

有可能,但我建议不要这样做。 Hibernate是一个持久性框架,但是你的sql是特定于语言的,只读它。

由于

,我建议使用数据库view
  • 表现
  • 敏捷
  • 不再是语言特定的,
  • 程序员易于理解

可选您可以为视图编写一个hibernate实体。

查询你有关于数据库的模型信息,所以它是database itself的明确任务!