Przejdź do narzędzia
ViewCSV
Plik nie jest nigdzie wysyłany

Połącz pliki CSV: jeden pod drugim lub według kolumny

2 pliki
  1. customers.csv8 wierszy · customer_id, name, country, segment
  2. invoices.csv10 wierszy · customer_id, invoice_no, total, paid
Sposób łączenia
Wynik
Wynik
#customer_idnamecountrysegmentinvoice_nototalpaid
100301Alicja NowakPolskaretail···
200302Jakub WiśniewskiPolskaeducation···
300303Franciszek LewandowskiPolskabusiness···
400304Alicja LewandowskiPolskaeducation···
500305Zofia NowakPolskabusiness···
600306Julia LewandowskiPolskaretail···
700307Aleksander WójcikPolskaretail···
800308Franciszek LewandowskiPolskabusiness···
900303···INV-2400293.29false
1000309···INV-2401654.45true
1100306···INV-2402341.49true
1200305···INV-2403363.82false
1300303···INV-2404215.43true
1400304···INV-2405195.73false
1500304···INV-2406366.46true
1600309···INV-2407319.33true
1700306···INV-2408564.07true
1800306···INV-2409187.37true

18 wierszy · 7 kolumny

Aby połączyć pliki CSV, dodaj dwa lub więcej plików i wybierz sposób łączenia. Tryb „Jeden pod drugim” zestawia wiersze wszystkich plików w jedną tabelę i dopasowuje kolumny po nazwie nagłówka, więc kolumna, którą mają tylko niektóre pliki, zostaje zachowana i w pozostałych wierszach jest pusta – tak zwykle łączy się eksporty miesięczne albo z różnych oddziałów. Tryb „Złącz według klucza” zestawia dwa pliki obok siebie według jednej lub kilku kolumn kluczowych, podobnie jak WYSZUKAJ.PIONOWO w arkuszu, i podaje, ile wierszy się dopasowało, które klucze się powtarzają i ile dodatkowych wierszy przez to powstało. Połączona tabela zmienia się razem z opcjami, a pliki są łączone w Twojej przeglądarce i nigdy nie trafiają na serwer.

Jak połączyć pliki CSV

  1. Dodaj pliki. Dla każdego automatycznie wykrywane są ogranicznik i kodowanie, a pierwszy wiersz jest używany jako nagłówek. Lista pokazuje liczbę wierszy i pierwsze kolumny każdego pliku; przesuwaj pliki w górę lub w dół, aby ustalić kolejność.
  2. Wybierz „Jeden pod drugim”, aby umieścić wiersze wszystkich plików kolejno po sobie, albo „Złącz według klucza”, aby dopasować wiersze dwóch pierwszych plików po kluczu.
  3. Sprawdź podgląd i komunikaty nad nim, a potem pobierz wynik jako CSV lub otwórz go w edytorze CSV, aby dalej nad nim pracować.

Wiersze zachowują kolejność listy plików: najpierw wszystkie wiersze pierwszego pliku, potem wszystkie wiersze drugiego i tak dalej. Aby połączyć wiele miesięcznych eksportów, dodaj je wszystkie naraz i włącz kolumnę z nazwą pliku źródłowego – wtedy przy każdym wierszu będzie widać, z którego pliku pochodzi.

Jeden pod drugim: pliki z różnymi kolumnami

Tryb „Jeden pod drugim” oferuje trzy sposoby dopasowania kolumn. Wybierz ten, który odpowiada temu, czym różnią się Twoje pliki.

Po nazwie (domyślnie)Wynik zawiera wszystkie nagłówki ze wszystkich plików, w kolejności pierwszego wystąpienia. Wiersz z pliku, w którym brakuje danej kolumny, ma w niej pustą wartość. Nazwy muszą być identyczne: SKU i sku to dwie różne kolumny.
Wymagane te same kolumnyZatrzymuje się z błędem wskazującym pierwszy plik, którego nagłówki różnią się nazwą, liczbą lub kolejnością. Przydaje się, gdy wszystkie pliki powinny pochodzić z tego samego eksportu, a zmieniona nazwa kolumny oznacza, że coś poszło nie tak.
Po pozycjiKolumna 1 trafia pod kolumnę 1 i tak dalej. Nagłówki pochodzą z pliku o największej liczbie kolumn, a krótsze pliki dostają puste wartości na końcu. Używaj tej opcji tylko wtedy, gdy pliki nie mają użytecznego nagłówka albo mają ten sam układ pod różnymi nazwami.
Kolumna z nazwą pliku źródłowegoDodaje ostatnią kolumnę, domyślnie o nazwie source_file, z nazwą pliku dla każdego wiersza. Ta nazwa nie może już występować wśród nagłówków.
Usuń dokładnie powtórzone wierszePo zestawieniu plików usuwa każdy wiersz identyczny z jednym z wcześniejszych i podaje, ile ich usunięto. Zostaje pierwsza kopia. Wartości muszą być dokładnie równe, łącznie z wielkością liter i spacjami; kolumna z nazwą pliku jest pomijana, więc ten sam wiersz w dwóch plikach liczy się jako duplikat.

Dopasowanie po pozycji umieszcza wartości pod niewłaściwym nagłówkiem, gdy jeden z plików ma dodatkową kolumnę lub inną kolejność kolumn: w przykładzie poniżej wartość qty z kwietnia trafiłaby pod name. Dopasowanie po nazwie zapobiega temu zawsze, gdy pliki mają nagłówki.

Złączenie: łączenie dwóch plików po kluczu

Złączenie traktuje dwa pierwsze pliki z listy jako lewy i prawy. Wybierz jedną lub kilka par kolumn kluczowych; kolumny w parze mogą mieć różne nazwy, np. customer_id po lewej i id po prawej. Przy kilku parach wiersz pasuje tylko wtedy, gdy zgadzają się wszystkie pary.

Wszystkie wiersze pierwszego pliku (left join, domyślnie)Każdy wiersz lewego pliku, z kolumnami prawego pliku wypełnionymi tam, gdzie klucz się dopasował, i pustymi tam, gdzie nie.
Tylko wiersze występujące w obu (inner join)Tylko te wiersze lewego pliku, których klucz występuje w prawym pliku.
Wszystkie wiersze drugiego pliku (right join)Każdy wiersz prawego pliku: dopasowane wiersze w kolejności z lewego pliku, a po nich wiersze prawego pliku bez dopasowania.
Wszystkie wiersze obu plików (full join)Każdy wiersz z obu plików: wynik złączenia lewostronnego, a po nim wiersze prawego pliku bez dopasowania.
Ignoruj w kluczach wielkość liter i spacje na brzegach C02 pasuje do c02. Do wyniku trafia tekst klucza z lewego pliku.

Wynik zawiera wszystkie kolumny lewego pliku, a po nich kolumny prawego pliku z wyjątkiem jego kolumn kluczowych. Kolumna z prawego pliku, której nazwa jest już zajęta, dostaje dopisek (2), np. total (2), a komunikaty wymieniają kolumny o zmienionych nazwach. W przypadku wiersza prawego pliku bez dopasowania jego klucz jest wpisywany do kolumny klucza lewego pliku, a pozostałe kolumny lewego pliku pozostają puste.

Jeśli klucz występuje w prawym pliku więcej niż raz, każdy pasujący wiersz lewego pliku jest powtarzany tyle razy, ile jest dopasowań. Komunikaty podają liczbę dopasowanych wierszy, wierszy tylko z lewego i tylko z prawego pliku, powtórzonych kluczy po każdej stronie oraz powstałych dodatkowych wierszy, więc od razu widać, że wyszukiwanie, które miało być jeden do jednego, takie nie jest.

Wartości, nagłówki i różne ograniczniki

  • Wartości są tekstem i pozostają dokładnie w zapisanej postaci, więc 00123 zachowuje zera wiodące. Klucze również porównywane są jako tekst: 00123 i 123 nie pasują do siebie, nawet przy ignorowaniu wielkości liter i spacji.
  • Ograniczniki, cudzysłowy i podziały wiersza wewnątrz wartości w cudzysłowie są odczytywane zgodnie z RFC 4180, a w pobranym pliku są ponownie ujmowane w cudzysłów tam, gdzie to potrzebne.
  • W obrębie jednego pliku pusty nagłówek staje się Column 3, a powtórzony – name (2). Te wygenerowane nazwy biorą udział w dopasowaniu po nazwie tak jak wszystkie inne.
  • Pliki mogą mieć różne ograniczniki i kodowania – każdy jest wykrywany osobno. Pobrany plik jest rozdzielany przecinkami, a znaki końca wiersza i kodowanie przejmuje od pierwszego pliku na liście. Kodowania, których przeglądarka nie potrafi zapisać, np. Shift_JIS, są zapisywane jako UTF-8.

Problemy z łączeniem i złączaniem

  • Kolumny pojawiają się dwukrotnie pod nieco innymi nazwami. Pliki zapisują nagłówek inaczej (Email i email albo ze spacją na końcu). Przed łączeniem zmień jedną z nazw w narzędziu Zmiana nazw i kolejności kolumn CSV albo – jeśli układy są identyczne – użyj dopasowania po pozycji.
  • Złączenie prawie nic nie dopasowało. Sprawdź, czy klucze są zapisane tak samo w obu plikach: zera wiodące, przedrostki i spacje mają znaczenie. Włącz ignorowanie wielkości liter i spacji na brzegach albo najpierw usuń spacje z kolumny w narzędziu Czyszczenie danych CSV.
  • Wynik złączenia ma więcej wierszy niż lewy plik. Prawy plik powtarza klucz; komunikaty pokazują, ile kluczy się powtarza i ile dodatkowych wierszy przez to powstało. Usuń duplikaty albo wybierz dokładniejszą parę kluczy.
  • Połączona tabela przekracza limit przeglądarki. Wynik może mieć najwyżej 100 000 wierszy i 2 mln komórek. Najpierw przefiltruj pliki wejściowe albo łącz mniej plików naraz.

Limity łączenia i prywatność

Każdy plik może mieć do 25 MB, 100 000 wierszy, 250 kolumn i 2 mln komórek, a wynik łączenia lub złączenia podlega tym samym limitom 100 000 wierszy i 2 mln komórek. Łączenie nie działa strumieniowo: każdy plik jest wczytywany do pamięci.

Pliki są odczytywane w tle w tej karcie i łączone w Twojej przeglądarce. Nigdy nie są wysyłane na serwer. Aby zamiast łączyć dwie wersje pliku sprawdzić, co się między nimi zmieniło, użyj narzędzia Porównywanie plików CSV; aby podzielić jeden plik na kilka, użyj narzędzia Dzielenie plików CSV.

Przykład: dopisanie dwóch plików stanów magazynowych o różnych kolumnach

Dwa eksporty stanów magazynowych z różnymi kolumnami, połączone jeden pod drugim po nazwie nagłówka, z włączoną kolumną pliku źródłowego. Kolumny name i warehouse istnieją tylko w jednym z plików, więc wiersze drugiego pliku są w nich puste, a kody SKU zachowują zera wiodące.

CSV
march.csv
sku,name,qty
00123,"Desk lamp, brass",4
00456,Shelf,2

april.csv
sku,qty,warehouse
00789,10,North
00456,2,
merged.csv
sku,name,qty,warehouse,source_file
00123,"Desk lamp, brass",4,,march.csv
00456,Shelf,2,,march.csv
00789,,10,North,april.csv
00456,,2,,april.csv

Pytania i odpowiedzi

Czy mogę złączyć więcej niż dwa pliki?

Nie w jednym kroku. Złączenie używa dwóch pierwszych plików z listy. Pobierz lub otwórz wynik, a potem złącz go z kolejnym plikiem. Tryb „Jeden pod drugim” nie ma takiego ograniczenia i zestawia wszystkie dodane pliki.

Czy usuwanie powtórzonych wierszy porównuje tylko kolumnę kluczową?

Nie. Wiersz jest usuwany tylko wtedy, gdy wszystkie jego wartości są dokładnie równe wartościom wcześniejszego wiersza. Aby zostawić jeden wiersz na każdy identyfikator, przepuść wynik przez narzędzie Czyszczenie danych CSV i usuń tam duplikaty według kolumny kluczowej.

Dlaczego dopasowanie po pozycji umieściło wartości pod niewłaściwym nagłówkiem?

Tryb pozycji ignoruje nazwy nagłówków i bierze nagłówki z pliku o największej liczbie kolumn. Jeśli jeden plik ma kolumnę, której nie mają pozostałe, wszystkie dalsze wartości się przesuwają. Przełącz na dopasowanie po nazwie.

Standardy i źródła