Il formato di file CSV è uno standard per lo scambio di dati strutturati tra aziende o tra applicazioni software diverse. È basato su testo e usa delimitatori di punteggiatura per separare le colonne.

Ecco un esempio di dati in un file CSV:

firstName, lastName, email
Joe, Vaughn, vaugh@hotmail.com
Bob, Cunnighan, bobc@gmail.com

I file CSV possono essere esportati dalla maggior parte degli strumenti che trattano dati, inclusi CRM, Order Management System, Spreadsheet (Google Sheets o Microsoft Excel) e soluzioni finanziarie. In futuro potremmo avere modelli di dati unificati per trasferire elementi strutturati tra applicazioni. Nel frattempo, ci affidiamo ai CSV.

Quando si tratta di manipolare file CSV, la soluzione più immediata è lo spreadsheet. Caricare un file CSV in Google Sheets o Microsoft Excel è semplice. Tuttavia, questi strumenti mostrano limiti su due operazioni comuni:

Quando eseguiamo una join, usiamo una colonna in comune per combinare dati da più fonti. I fogli di calcolo non possono definire un vincolo di unicità su una colonna, quindi offrono un supporto limitato per join o deduplicazione.

Questa guida ha 2 parti:

In questo tutorial usiamo 2 file CSV demo:

Soluzione 1: Unire file CSV su una colonna comune con Datablist

La manipolazione dei dati è semplice con Datablist. Vediamo come puoi unire file CSV tramite un identificatore univoco. Apri Datablist (nessuna registrazione) per iniziare.

Passo 1: Carica il primo file CSV

Per prima cosa crea una collection in cui riversare tutti i tuoi dati CSV. Clicca sul pulsante + nella sidebar per creare una nuova collection.

Una volta creata la collection, vai alla sezione "Import CSV".

Crea una nuova collection

Nota: la prima riga del tuo file CSV deve contenere i nomi delle colonne.

Trascina e rilascia un file CSV oppure clicca per selezionarlo dal tuo computer. Quando il file è caricato, verifica che l’anteprima del numero di righe e colonne sia corretta prima di passare allo step successivo.

Mappa le colonne del CSV con le proprietà della collection oppure crea nuove proprietà.

Infine, clicca sul pulsante "Import" per avviare l’import. Il tuo primo file CSV è stato importato!

Importa il tuo primo CSV

Passo 2: Definisci quale colonna usare come identificatore univoco

Ora che hai importato il primo file CSV, puoi impostare un vincolo di "Unique Values" su una proprietà della collection. Con questa informazione, Datablist fonderà i nuovi import CSV rispettando il vincolo. Vai nella configurazione delle colonne e modifica la proprietà che sarà il tuo identificatore univoco. Spunta l’attributo "Unique Values" e salva.

Aggiungi il vincolo di valori univoci a una proprietà

Passo 3: Carica uno o più file CSV

Dopo aver impostato un vincolo di unicità su una proprietà della collection, importa gli altri file CSV uno per volta nella collection esistente. Se necessario, crea nuove proprietà durante la fase di mapping del CSV.

Quando la collection contiene item e ha un vincolo di unicità, puoi selezionare un’opzione di merging durante l’import del CSV.

Merging Mode
Merging Mode

Scegli come unire i dati nella collection:

  • Soft Merge: se esiste già un valore per la proprietà dell’item, non aggiornarlo. È l’impostazione predefinita.
  • Hard Merge: se esiste già un valore per la proprietà dell’item, aggiornarlo

L’opzione "Skip item" salta la riga quando nella collection è già presente un entry con lo stesso valore identificatore; non deve essere selezionata se vuoi unire file CSV.

CSV Join - Merging Options
CSV Join - Merging Options

Passo 4: Esporta in CSV se necessario

Complimenti! 🎉 Hai unito con successo i file CSV usando una colonna comune! Se devi usare il risultato in un altro strumento, clicca sul pulsante "Export" per esportare la collection in un altro file CSV.

CSV Export
CSV Export

Video completo passo-passo per unire file CSV con Datablist

Nel video qui sotto, l’attributo "unique values" viene impostato direttamente durante la creazione della proprietà.

Unisci file CSV su una colonna univoca con Datablist

Soluzione 2: Unire file CSV con Google Sheets (o Microsoft Excel)

Gli spreadsheet hanno un supporto limitato per unire file CSV su una colonna comune. Tuttavia, una formula di cella può trovare in un’altra tabella la riga che corrisponde a un valore. Applicata a ogni riga di una tabella, può cercare in un’altra tabella e restituire il valore di qualsiasi colonna della riga corrispondente.

La formula è VLOOKUP ed è disponibile su Microsoft Excel e Google Sheets.

Limitazioni

  • Con i fogli di calcolo, un file CSV funge da tabella master e deve contenere tutti i valori possibili per la colonna di join.
  • In tutte le tabelle secondarie, la colonna di join deve essere la prima colonna.

Passo 1: Carica i tuoi file CSV

In questo tutorial usiamo Google Sheets (la formula VLOOKUP è simile in Microsoft Excel).

Tra i tuoi CSV, scegli quello con più valori da usare come tabella master. Gli altri saranno i CSV secondari.

Per prima cosa carica il file CSV master con File -> Import e seleziona il tuo CSV (vai alla scheda Upload per usare un file dal tuo computer).

In Import Location, seleziona Insert new sheet(s).

Carica un file CSV in Google Sheets
Carica un file CSV in Google Sheets

Ripeti l’operazione per i file CSV secondari. Ogni file CSV deve essere caricato in un foglio dedicato all’interno dello spreadsheet.

File CSV importati in Google Sheets
File CSV importati in Google Sheets

Passo 2: Crea nuove colonne nel foglio principale

Il foglio con il tuo CSV master è la tabella principale e riceverà i valori dagli altri fogli. In questo foglio, crea nuove colonne per archiviare i dati provenienti dalle altre tabelle.

In questo tutorial vogliamo portare il campo Job Title dalla tabella secondaria alla tabella principale, quindi aggiungiamo una colonna vuota Job Title.

Nuova colonna Job Title
Nuova colonna Job Title

Passo 3: Sposta la colonna univoca come prima colonna nei fogli secondari

La formula VLOOKUP cerca nella prima colonna della tabella in cui effettua la ricerca. In tutte le tabelle secondarie (non serve nel foglio principale), sposta in prima posizione la colonna che userai come colonna di join.

La colonna identificatore deve essere la prima
La colonna identificatore deve essere la prima

Passo 3: Usa la formula VLOOKUP

L’ultimo passo è usare la formula VLOOKUP per trovare le righe negli altri fogli e visualizzare una colonna della riga corrispondente.

La formula accetta 4 argomenti:

  • search_key - Il valore da cercare. Sarà il valore dell’identificatore univoco della riga.
  • range - L’intervallo in cui cercare. La prima colonna dell’intervallo viene cercata in base alla chiave specificata in search_key. Imposta come range l’intera tabella secondaria (vedi video).
  • index - L’indice della colonna da restituire. La prima colonna del range è numerata 1.
  • is_sorted - [TRUE di default] - Indica se la colonna da cercare (la prima colonna del range) è ordinata. FALSE è consigliato nella maggior parte dei casi. Se impostato a TRUE e i dati non sono ordinati, i risultati saranno sbagliati!
VLOOKUP(search_key, range, index, [is_sorted])

Guarda il video qui sotto per capire come usare VLOOKUP per unire dati su una colonna univoca:

Unire file CSV su colonna univoca con Google Sheets

Leggi di più sulla formula VLOOKUP nella documentazione di Google Sheets.

Ripeti l’operazione per ogni altra colonna delle tue tabelle secondarie 💪.