ForHosting KIT · Dati e file

Unisca due CSV per chiave e trovi le righe senza corrispondenza

Unisca due file CSV tramite una chiave quando una tabella contiene i record principali e l’altra aggiunge campi correlati.

● BetaGratis · nel tuo browser
Usalo da WebAPIEmailTelegramApp presto

Incolli entrambi i testi CSV, indichi l’intestazione condivisa e ottenga un join sinistro prevedibile senza configurare un database né scrivere uno script temporaneo. La risposta separa anche i record senza corrispondenza di entrambi i lati, agevolandone il controllo. Valori tra virgolette, chiavi ripetute, conflitti tra intestazioni e terminatori di riga comuni vengono gestiti in modo deterministico.

Prepari due file CSV con una chiave condivisa affidabile

Individui innanzitutto la colonna che rappresenta lo stesso elemento in entrambi i file, ad esempio customer_id, order_number, sku oppure email. L’intestazione deve coincidere esattamente con il valore della chiave inviato, incluse maiuscole e spazi. Le altre intestazioni possono essere diverse. Il CSV sinistro è la tabella principale: ogni suo record rimane nel risultato unito, anche quando non esiste una corrispondenza a destra. Il CSV destro fornisce colonne aggiuntive quando la chiave coincide. Scelga possibilmente un identificatore stabile. Nomi e descrizioni possono cambiare, contenere spazi incoerenti o ripetersi, mentre un identificatore di sistema è in genere più sicuro. Il parser supporta campi tra virgolette, virgolette doppie con escape, virgole nei valori tra virgolette, ritorni a capo incorporati, file CRLF e un byte-order mark UTF-8 iniziale. Se entrambi i file utilizzano un altro separatore, specifichi quel delimitatore di un solo carattere. I due input devono usare lo stesso delimitatore. Le intestazioni vuote o duplicate vengono rifiutate perché renderebbero ambigui gli oggetti risultanti. La capacità restituisce inoltre un errore chiaro se l’intestazione chiave manca in uno dei CSV.

Comprenda il join sinistro e le chiavi duplicate

Per ciascun record del CSV sinistro, la capacità cerca nel CSV destro i record con un testo della chiave esattamente uguale. Una singola corrispondenza genera un record combinato. Se non vi sono corrispondenze, viene comunque prodotto un record unito: i campi sinistri originali restano invariati e ogni campo proveniente da destra diventa una stringa vuota. Quando il file destro contiene più record con la stessa chiave, il record sinistro si espande in una riga di output per ogni corrispondenza. Questa relazione uno-a-molti è utile per collegare un cliente a più abbonamenti o un prodotto a più magazzini, ma può aumentare il numero di righe. Le chiavi duplicate a sinistra vengono elaborate separatamente e mantengono l’ordine originale. Righe e corrispondenze rispettano l’ordine delle fonti, garantendo risultati deterministici. La chiave condivisa compare una sola volta. Se un’intestazione destra diversa dalla chiave esiste già a sinistra, riceve il prefisso right_ per non sovrascrivere alcun valore. Se serve, vengono aggiunti altri prefissi. L’array columns mostra l’ordine e i nomi finali esatti prima che Lei utilizzi joined_rows.

Utilizzi i report delle righe non abbinate per riconciliare i dati

L’array unmatched_left contiene i record sinistri originali la cui chiave non ha trovato corrispondenza a destra. Queste voci rimangono in joined_rows perché si tratta di un join sinistro, ma l’elenco separato consente di inviarle a correzione, arricchimento o revisione. L’array unmatched_right raccoglie i record destri originali mai utilizzati da una riga sinistra. Non compaiono nella tabella unita, ma spesso rivelano dati di riferimento obsoleti, identificatori nuovi inattesi o un file relativo al periodo sbagliato. I conteggi riassumono le dimensioni delle fonti, il risultato espanso e i totali senza corrispondenza, facilitando i controlli automatici. Un flusso può rifiutare un’importazione quando unmatched_left è maggiore di zero oppure avvisare quando unmatched_right supera una soglia. Il confronto è esatto e non elimina spazi, non normalizza maiuscole e minuscole e non reinterpreta numeri: 001, 1 e 1 seguito da uno spazio restano quindi distinti. Questa regola prudente evita associazioni accidentali. Normalizzi le chiavi prima della chiamata soltanto se le regole aziendali consentono di considerarle equivalenti. A $0.002 per richiesta tramite API, l’operazione si adatta sia alle importazioni ricorrenti sia alle verifiche occasionali.

Arricchisca le esportazioni clienti

Aggiunga piano, territorio o responsabile da un CSV di riferimento conservando ogni cliente dell’esportazione principale.

Riconcili ordini e pagamenti

Unisca le transazioni per numero d’ordine e individui ordini non pagati o pagamenti collegati a ordini sconosciuti.

Verifichi la copertura del catalogo

Combini l’elenco principale degli SKU con i dati del fornitore e rilevi prodotti incompleti e righe inutilizzate.

Cosa succede se manca la colonna chiave?

La richiesta non riesce e un errore di input indica se la chiave manca nel CSV sinistro o in quello destro.

L’operazione conserva tutte le righe a sinistra?

Sì. È sempre un join sinistro; una riga non abbinata riceve stringhe vuote nei campi provenienti da destra.

Come vengono gestite le chiavi duplicate?

Ogni record sinistro viene combinato con tutti i record destri corrispondenti e può quindi produrre più righe.

Cosa avviene se i file hanno una colonna con lo stesso nome?

La colonna sinistra conserva il nome; quella destra riceve il prefisso right_, ripetuto se necessario.

Le chiavi vengono ripulite prima del confronto?

No. Il confronto esatto conserva spazi, maiuscole e zeri iniziali; normalizzi prima i valori se le Sue regole lo richiedono.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/data/merge-csv-on-key

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/data/merge-csv-on-key \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"left_csv":"id,name\n1,Ada\n2,Linus\n3,Grace","right_csv":"id,team\n1,Research\n2,Platform\n4,Support","key":"id"}'
{
  "left_csv": "id,name\n1,Ada\n2,Linus\n3,Grace",
  "right_csv": "id,team\n1,Research\n2,Platform\n4,Support",
  "key": "id"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "data.merge_csv_on_key",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

max_mb25
HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Leggi la documentazione completa del KIT →