Предположим, у вас есть один файл CSV с 2 полями: идентификатор и адрес электронной почты. У вас есть другой файл с 2 полями: адрес электронной почты и имя. Как вы можете создать файл со всеми тремя полями, объединенными по электронной почте?
22
Ответы:
Редакция 3 :
Вы должны отсортировать оба списка по электронной почте в алфавитном порядке, а затем присоединиться. Учитывая, что в поле электронной почты 2-е поле файла1 и 1-е поле файла2:
значение параметра
производит
отсортировано по электронной почте в алфавитном порядке.
Обратите внимание, что если в каком-либо файле отсутствует какое-либо письмо, оно будет опущено в результатах.
источник
Используйте csvkit :
или
источник
Возможно, это излишне, но вы можете импортировать в базу данных (например, OpenOffice Base) в виде двух видов таблиц и определить отчет, который является желаемым результатом.
Если импорт CSV является проблемой, то программа для работы с электронными таблицами (например, OpenOffice Calc) может выполнить импорт. Результат может быть легко перенесен в базу данных.
источник
В будущем вы можете начать играть с AWK . Это очень простой маленький скриптовый язык, который существует в той или иной форме в каждой системе * nix, и его единственная миссия - жизнь - это манипуляции со стандартными текстовыми базами данных с разделителями. С помощью нескольких строк одноразового скрипта вы можете делать очень полезные вещи. Язык небольшой и элегантный и имеет лучшее соотношение полезности и сложности, чем все, что я знаю.
источник
Используйте Go: https://github.com/chrislusf/gleam
источник
Попробуйте CSV Cruncher .
Он принимает файлы CSV в качестве таблиц SQL, а затем разрешает запросы SQL, в результате чего получается другой файл CSV или JSON.
Для вашего случая вы просто позвоните:
Инструменту нужна Java 8 или более поздняя версия.
Некоторые из преимуществ:
join
решения на основе.Отказ от ответственности: я написал этот инструмент. Раньше он был в замешательстве после закрытия Google Code, но я восстановил его и добавил новые функции по мере его использования.
источник
Вы можете прочитать файл CSV с помощью программы для работы с электронными таблицами, такой как LibreOffice, и использовать
VLOOKUP()
макрос для поиска имени во втором файле.источник
Вы также можете использовать инструмент, специально разработанный для объединения CSV-файлов, такой как найденный на https://filerefinery.com.
источник