为了获得更多动力,我想在我的应用中添加随机部分。 以下是我在其他技术方面所做的工作,以及在游戏中无效的方法:
long id = JPA.execute("select id from Realisation r order by RANDOM() LIMIT 1");
这是堆栈:
unexpected token: LIMIT near line 1, column 55
评论:
修改
经过一番调查后,我就是这样做的:
jpa.dialect=org.hibernate.dialect.MySQLDialect
Realisation r = Realisation.find("order by RAND()").first();
答案 0 :(得分:2)
经过一番调查后,我就是这样做的。在application.conf中定义jpa.dialect:
jpa.dialect=org.hibernate.dialect.MySQLDialect
使用经典模型实用程序获取完整对象而不是id:
Realisation r = Realisation.find("order by RAND()").first();
不是最好的方法,因为我只需要ID而不是完整的对象。无论如何,我没有其他解决方案。如果有人只有一个ID我将采取它。
答案 1 :(得分:1)
JPQL中没有“limit”子句,你需要的是分页。如果这是一个JPQL查询,你可以使用Query.setMaxResults,这在帖子中并不完全清楚。