有没有办法在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" )
答案 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”) 它适用于任何数据库。