Объединение списков
Этот калькулятор может объединять csv списки, используя указанную колонку в качестве ключа, аналогично операции JOIN языке SQL.
Я думаю, что большинство людей, когда-либо писавших запросы на языке SQL, знают о наличии там операции объединения таблиц JOIN. Но что делать, если у вас есть пара списков в формате csv (строки с разделителями), при этом в каждом списке есть колонка-ключ с совпадающими значениями, и вам хочется получить объединенный список?
Например, в такой ситуации:
Первый список:
1,Иван
2,Василий
3,Петр
Второй список:
1,Иванов
2,Васильев
3,Петров
Список, объединенный по значению нулевой колонки в первом списке и нулевой колонки во втором списке:
1,Иван,Иванов
2,Василий,Васильев
3,Петр,Петров
Конечно, можно создать таблицы в какой-нибудь СУБД, находящейся в данный момент под рукой, импортировать туда данные и написать-таки JOIN, или можно написать программу на каком-либо языке, делающую тоже самое. А еще можно просто воспользоваться калькулятором ниже и сэкономить время на что-то другое.
Итак, калькулятор ниже работает следующим образом:
- Копируете в поле "Первый список" текст из вашего csv файла
- Задаете регулярное выражение разбора строки (регулярное выражение по умолчанию разбирает строку из двух колонок, разделенных запятой)
- Задаете индекс колонки ключа (по этой колонке будет идти объединение списков)
- То же самое повторяете для второго списка (регулярное выражение по умолчанию разбирает строку из двух колонок, разделенных пробелом)
- Задаете тип объединения: внутреннее (inner join), левостороннее внешнее (left outer join) или правостороннее внешнее (right outer join)
- Задаете разделитель в строке объединенного списка
- Задаете выражение замены для отсутствующих значений (NULL). Это только для внешних объединений, конечно.
- Нажимаете "Рассчитать"
- Получаете объединенный список, с ключевым значением в нулевой колонке
Комментарии