Nel precedente articolo abbiamo già visto che cos’è una JOIN e come vengono da gestite da Tableau.
Una join è l’unione tra più tabelle/DB che hanno dei campi in comune (le chiavi primarie/key field).
Andiamo a creare in Alteryx la stessa join fatta in Tableau nel precedente articolo:
Una persona pratica in materia potrebbe pensare: “Ah, va beh, è semplice! L è il connettore per la Left Join, R è il connettore per la Right Join e J è il connettore per la Inner Join.”
SBAGLIATO!!
Alteryx ha un approccio particolare per le join.
Come possiamo notare dall’immagine qui accanto con lo schemino a insiemi, il connettore J è la JOIN, mentri due connettori esterni R e L sono gli UNJOIN.
Alteryx ci separa i dati in 3 flussi:
- i dati che sono stati uniti tramite il campo in comune
- i dati della tabella di sinistra esclusi dall’unione
- i dati della tabella di destra esclusi dall’unione
Ma procediamo con ordine. Abbiamo due tabelle. In una abbiamo i dati sui clienti registrati. Nell’altra abbiamo i dati sulle vendite.
Creiamo una join usando come key field, come campo in comune tra le due tabelle l’ID cliente.
Ecco i risultati della join su Alteryx:
Il connettore J di fatto è una Inner Join al 100%. Avevamo 3 acquisti, solo due effettuati da clienti registrati nel database: ci restituisce solo 2 risultati.
Nel connettore L abbiamo tutti i valori esclusi della tabella di sinistra che non hanno trovato un ID cliente corrispondente a destra (clienti che hanno fatto un acquisto, ma che non sono registrati, che non sono presenti nella tabella dei clienti).
Nel connettore R abbiamo tutti i valori esclusi della tabella di destra che non hanno trovato un ID cliente corrispondente a sinistra (clienti registrati che non hanno fatto alcun acquisto, che non compaiono nella tabella degli acquisti).
E se io avessi bisogno di fare una Left/Right/Full Outer Join?
Niente paura, basterà inserire un UNION TOOL subito dopo e unire i connettori corrispondenti.
- Left join sarà il connettore J+L (inner+left).
- Right join sarà il connettore J+R (inner+right)
- Full Outer saranno tutti e tre insieme (inner+right+left).
Inner Join: | ![]() |
![]() |
Left Unjoin: | ![]() |
![]() |
Right Unjoin: | ![]() |
![]() |
Left Outer Join: | ![]() |
![]() |
Right Outer Join: | ![]() |
![]() |
Full Outer Join: | ![]() |
![]() |