JPA 1:最终订购的订单的JPQL

时间:2013-06-03 09:38:03

标签: jpa toplink

有没有办法在JPQL查询中进行排序,如:

SELECT v 
FROM Vehicle v 
WHERE ...
ORDER BY v.lastUserUpdate DESC NULLS LAST, v.id DESC;

NULLS LAST会破坏查询。有没有正确的方法来做到这一点?

1 个答案:

答案 0 :(得分:0)

我不知道允许这样的JPQL函数,因为我认为它是特定于数据库的。 JPA 2.0有一个'SQL'关键字,你可以使用它来传递“nulls last”。就像是   “ORDER BY v.lastUserUpdate DESC SQL('NULLS LAST'),...”

请参阅 http://java-persistence-performance.blogspot.ca/2012/05/jpql-vs-sql-have-both-with-eclipselink.html了解有关JPA和eclipselink中可用内容的更多详细信息。 TopLink使用EclipsLink for JPA,因此您必须验证您正在使用的版本并使用本机TopLink API,如果它不支持它并且您无法升级。