小编Ste*_*han的帖子

如何删除Hibernate Search中的所有重复结果?

我正在使用带有Hibernate Search 4.4.0的Infinispan和6.0.2.

在开始之后,我执行了一个类似的查询

CacheQuery cq = SearchManager.getQuery(query,Hibernate.class).projection("id");
Run Code Online (Sandbox Code Playgroud)

我用它cq.list()来获取"id".

但是现在结果的数量达到了300.000,因为设计了DB(不能改变),重复的id几乎是29,000.

我写这个来获得"id":

for(int i=0;i<listObject.size();i++)
{
    Object[] rdf = (Object[])listObject.get(i);
    if(!result.contains((String) rdf[0])) 
       result.add((String) rdf[0]);
}
Run Code Online (Sandbox Code Playgroud)

但即使我将这一部分平行,也需要很长时间.

是否有一个函数来删除Hibernate中查询的重复ID,就像DISTINCT在SQL中那样?

hibernate hibernate-search infinispan

5
推荐指数
1
解决办法
906
查看次数

标签 统计

hibernate ×1

hibernate-search ×1

infinispan ×1