使用setMaxRows的ebean限制结果集

时间:2012-10-25 06:53:04

标签: postgresql playframework-2.0 ebean

我正在使用播放中的ebean从搜索表单创建一个带有参数的查询!框架2.0.4。根据给定的参数,结果最多可包含一百万行。所以我使用setMaxRows(100)来限制结果。最后我有一个包含100个条目的列表,但是请求数据的真实语句缺少LIMIT关键字,所有数据都存储在内存中......

Query<Process> query = Process.find.fetch("documents").fetch("documents.workflows").fetch("documents.workflows.state");
ExpressionList<Process> expression = query.where().between("documents.workflows.date", new java.sql.Date(edit_date.getTime()), new java.sql.Date(edit_to.getTime()));
procs = expression.setMaxRows(100).orderBy().desc("id").findList();

爪哇
Postgresql 9.1
ebean 2.7.3
玩!框架2.0.4

有谁可以告诉我为什么ebean在我的情况下没有使用LIMIT关键字?

1 个答案:

答案 0 :(得分:1)

我不知道为什么它在声明中没有使用LIMIT,我昨天发现了相同的情况。

我的解决方案(我可以接受)是使用RawSql和/或SqlQuery创建自定义查询(两者都允许创建自定义语句)