有什麼辦法可以在Hbernate HQL或使用Hibernate Criteria(或DetachedCriteria)中重寫下面的SQL的等價物嗎?它應該從數據庫返回單個記錄。如何在HQL中編寫此SQL或使用Criteria?
哪一個建議使用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中編寫此SQL或使用Criteria?
哪一個建議使用HQL或Criteria或只是本機SQL?
Select * from X where x.name="name" and x.date =(select max(x.date) from X where x.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
使用order by date
和那麼q uery.setMaxResults()
真的是你唯一的選擇。
如果您正在使用Hibernate2
那麼你可以使用LIMIT
Equalent休眠: 從Xpojo x,其中x.name = 「名稱」 和x.date =(從Xpojo y其中選擇最大值(y.date) y.name =「name」) 它適用於任何數據庫。
@Sam是否適合你 – samba 2013-04-23 00:16:53