0

我有一个名为 duplicateDataLst 的列表,它是从我的 java 代码中的 SQL 查询中获得的,我的 DB 表包含所有重复数据及其计数。

现在我想检索与数据库表中特定数据重复的数据。我尝试的是

for(int i=0; i<duplicateDataLst .size(); i++)
{
  Object obj[] = (Object[]) duplicateDataLst.get(i);

      Long  id= (Long) obj[0]; 
      .
      .
      Long count= (Long) obj[12]; 
//Similarly other fields

 if(count>1)
{
  for(int j=i+1;j<(i+count), j++)
  {
    Object obj1[] = (Object[]) duplicateDataLst.get(j);
      Long  id1= (Long) obj1[0]; 
      .
      .
      Long count1= (Long) obj1[12];
  }
}
}

这样我得到了按 sql 查询分组的重复数据。但我的问题是我只在数据旁边得到重复数据,而不是以前的数据。例如,如果在特定表 1-a,2-a,3-a,4-a,5-b,6-b 中,当我转到 2-ai 时,我得到 3-a,4-a 作为重复数据,但是我也想要我没有得到的 1-a。请提供解决方案...非常感谢

4

1 回答 1

1

你可以让你的 SQL 查询只得到重复项,你不必在 Javascript 中处理这个,SQL 是为这样的东西而构建的。

示例查询(不知道您的表设计):

SELECT FieldData, COUNT(*) FROM Table GROUP BY FieldData HAVING COUNT(*) > 1

这只会让你得到重复的行和它们被重复的时间。

于 2013-09-10T13:10:48.800 回答