1

首先,我使用 Java 和 Hibernate(使用 setFech() 方法和 ScrollableResults 类)。

其次,我正在使用一个具有数千万行和一百多列的表。这张桌子与其他两张桌子相连。所以一个简单的“select count(*)”需要 1 分钟。

我正在使用下面的代码为我带来选择的结果,这将返回数百万行和所有列。所以我必须使用 fetch。

session = ((Session) manager.getDelegate()).getSessionFactory().openStatelessSession();
Query q = session.createSQLQuery(query).addEntity(MyEntity.class).setFetchSize(1000);

在第一次选择之后,我需要知道搜索的总行数,但我不想再做一次选择(这需要 1 分钟),我不能调用所有 scroll.next()。有可能这样做吗?

4

0 回答 0