有没有办法在 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" )
有没有办法在 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" )
等价休眠:来自 Xpojo x where x.name="name" and x.date =(select max(y.date) from Xpojo y where y.name="name" ) 它适用于任何数据库。
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