如何在HQL中编写此SQL或使用Criteria?

时间:2013-04-23 00:11:37

标签: sql hibernate hql hibernate-criteria detachedcriteria

有没有办法在Hbernate HQL或使用Hibernate Criteria(或DetachedCriteria)中重写等效的SQL?它应该从数据库返回单个记录。

建议使用HQL或Criteria或只使用本机SQL?

Select * from X where x.name="name" and x.date =(select max(x.date) from X where x.name="name" )

2 个答案:

答案 0 :(得分:0)

Select Model from X model where model.name="name" and 
model.date =(select max(model1.date) from X model1 where model1 .name="name" )

如果您使用Hibernate3   使用order by date然后q uery.setMaxResults()确实是您唯一的选择。

如果您使用Hibernate2,则可以使用LIMIT

答案 1 :(得分:0)

Equalent Hibernate: 来自Xpojo x,其中x.name =“name”和x.date =(从Xpojo y中选择max(y.date),其中y.name =“name”) 它适用于任何数据库。