0
我正在使用hibernate和spring的應用程序。我試圖通過使用ScrollableResults來查詢得到的結果的數量,但由於查詢包含很多連接(內部連接),結果包含多次重複的id。當我使用它來知道從數據庫返回的唯一行(或唯一標識符)的總數時,這會爲ScrollableResults創建問題。請幫忙。代碼的某些部分是下面:ScrollableResults大小給出了重複的值
StringBuffer queryBuf = new StringBuffer("Some SQL query with lots of Joins");
Query query = getSession().createSQLQuery(queryBuf.toString());
query.setReadOnly(true);
ScrollableResults results = query.scroll();
if (results.isLast() == false)
results.last();
int total = results.getRowNumber() + 1;
logger.debug(">>>>>>TOTAL COUNT<<<<<< = {}", total);
它使總數1440,但實際的唯一排在數據庫提前504 感謝。
當然,我會嘗試。謝謝。 – newProgramer
我也一樣,但需要很長時間。在我看來,uniqueResult()會遍歷所有記錄,在這種情況下,我無法從使用ScrollableResults中獲得... – IntelliData