Я хочу сравнить данные между двумя таблицами базы данных для сопоставленных столбцов a2a и вывести отдельные сопоставленные и несовпадающие записи в Excel. В веб-приложении есть экран для выбора конкретной таблицы и отображения карт. Основываясь на пользовательском вводе, я формирую динамический запрос и читаю данные из базы данных и сохраняю их в объекте List<List<String>>
для исходной и целевой таблиц.
Моя логика для нахождения записи о совпадении и несоответствии такова:
List<List<String>> sourceData= resultObj.getSourceData();
List<List<String>> targetData=resultObj.getTargetData();
List<List<String>> matchRecords=new ArrayList<List<String>>(sourceData);
matchRecords.retainAll(targetData);
List<List<String>> misMatchRecords=new ArrayList<List<String>>(sourceData);
misMatchRecords.removeAll(targetData);
Я хочу улучшить свою логику, чтобы получить точное совпадение и запись о несоответствии, потому что из-за вышеуказанного подхода сообщается о неправильном несоответствии в случае дублирования записей ...