0

有没有办法在 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" )
4

2 回答 2

0

等价休眠:来自 Xpojo x where x.name="name" and x.date =(select max(y.date) from Xpojo y where y.name="name" ) 它适用于任何数据库。

于 2013-04-23T04:02:49.823 回答
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 use order by date,那么 query.setMaxResults()确实是您唯一的选择。

如果您正在使用,Hibernate2那么您可以使用LIMIT

于 2013-04-23T00:13:39.687 回答