Я новичок в Pentaho Spoon, и я хотел бы импортировать записи файла csv в таблицу базы данных. Однако в таблицу базы данных следует импортировать только уникальные записи. Вот почему мне нужно сравнивать КАЖДУЮ запись со всеми записями таблицы базы данных, чтобы определить, следует ли импортировать запись или нет.
Пока что я опробовал предложенный CRUD-шаблон, который выглядит так:
Как вы можете видеть на картинке, я объединяю входные данные excel и входные данные таблицы (игнорируйте этапы приведения. Мне нужно было привести значение, потому что оно отличалось в формате с плавающей запятой: формат базы данных был # .000000, а формат csv с плавающей точкой. было # .0)
После объединения слиянием я сравниваю флаг (который задается строками слияния (diff), и если сравниваемые записи новые, я импортирую их в таблицу базы данных, если они изменены, я обновляю запись и если они удаляются или идентичные, я просто ничего не делаю. Пока все хорошо.
Но вот проблема: если я перетасовываю записи входного файла csv и заново запускаю преобразование, все записи импортируются заново и, следовательно, дублируются в моей таблице базы данных (чего я хотел избежать). Еще раз подчеркну: правильный способ решить эту проблему состоит в том, что каждая строка входного файла csv сравнивается со ВСЕМИ записями в таблице базы данных.
Как я могу это реализовать? Какие-либо предложения? Огромное спасибо заранее!!