Joins maken van uw data
Vaak is het nodig om data uit meerdere bronnen (verschillende tabellen of zelfs databronnen) te combineren om een gewenste analyse uit te voeren. Afhankelijk van de structuur van de data en de behoeften van de analyse, zijn er verschillende manieren om de tabellen te combineren.
Relaties versus joins
De standaardmethode in Tableau Desktop is het gebruik van relaties. Relaties behouden het detailniveau van de oorspronkelijke tabellen bij het combineren van informatie. Relaties maken het bovendien mogelijk om contextgebaseerde joins per werkblad uit te voeren, waardoor elke databron flexibeler wordt. In de meeste gevallen zijn relaties de aanbevolen methode om data te combineren. Zie Verschillen tussen relaties en joins voor meer informatie.
Er kunnen zich echter situaties voordoen waarin u direct een join wilt maken, bijvoorbeeld voor controle of voor gewenste aspecten van een join in vergelijking met een relatie, zoals opzettelijke filtering of duplicatie.
Opmerking: Relaties zorgen er uiteindelijk voor dat joins worden gebruikt (net achter de schermen). Een relatie tussen databronnen resulteert bijvoorbeeld in een join op basis van meerdere databases wanneer de visualisatie velden uit tabellen in verschillende databronnen gebruikt. Als zodanig kan Prestaties verbeteren voor joins op basis van meerdere databases relevant zijn.
Veelvoorkomende problemen
- Als u joins wilt bekijken, bewerken of maken, moet u een logische tabel openen in het relatiecanvas (het gebied dat u ziet wanneer u voor het eerst een databron opent of maakt) en het join-canvas openen.
- Gepubliceerde Tableau-databronnen kunnen niet worden gebruikt in joins. Om gepubliceerde databronnen te combineren, moet u de oorspronkelijke databronnen bewerken, zodat deze de join bevatten of een datacombinatie gebruiken.
- Bij het maken van joins van tabellen moeten de velden waarvan u joins maakt hetzelfde datatype hebben. Als u het datatype wijzigt nadat u joins van de tabellen hebt gemaakt, zal de join niet meer werken.
- Velden die in de JOIN-component worden gebruikt, kunnen niet worden verwijderd zonder de join buiten werking te stellen. Om joins te maken van data en dubbele velden op te schonen, gebruikt u Tableau Prep Builder in plaats van Desktop
Tip: Tableau Desktop biedt weliswaar de mogelijkheid om joins te maken en een aantal basisdata vorm te geven, maar Tableau Prep Builder is ontworpen voor datavoorbereiding. Als u meerdere joins moet uitvoeren, veldnamen moet opschonen, datatypen moet wijzigen, meerdere draaipunten moet uitvoeren of andere soorten ingewikkelde datavoorbereidingen, kunt u overwegen om Tableau Prep Builder(Link wordt in een nieuw venster geopend) te gebruiken.
Een join maken
Om een join te maken, maakt u verbinding met de relevante databron(nen). Zie Verbinding maken met uw data.
Deze kunnen zich in dezelfde databron bevinden (zoals tabellen in een database of werkbladen in een Excel-spreadsheet) of in verschillende databronnen (dit staat bekend als een join op basis van meerdere databases). Als u tabellen combineert met behulp van een join op basis van meerdere databases, kleurt Tableau de tabellen in het canvas en de kolommen in het dataraster in, zodat u kunt zien uit welke verbinding de data afkomstig zijn.
Opmerking: Niet alle databronnen ondersteunen joins op basis van meerdere databases, inclusief gepubliceerde Tableau-databronnen. Om gepubliceerde databronnen te combineren, bewerkt u de oorspronkelijke databronnen, zodat deze de join bevatten of een datacombinatie gebruiken.
Sleep de eerste tabel naar het canvas.
Selecteer Openen in het menu of dubbelklik op de eerste tabel om het join-canvas (fysieke laag) te openen.
Dubbelklik of sleep een andere tabel naar het join-canvas.
Als uw volgende tabel uit een geheel andere databron komt, kunt u in het linkerdeelvenster onder Verbindingen op de knop Toevoegen ( in webauthoring) klikken om een nieuwe verbinding toe te voegen aan de Tableau-databron. Selecteer die verbinding en sleep de gewenste tabel naar het join-canvas.
Klik op het pictogram Een join maken om de join te configureren. Voeg een of meer JOIN-componenten toe door een veld te selecteren uit een van de beschikbare tabellen die in de databron worden gebruikt, een join-operator te kiezen en een veld uit de toegevoegde tabel te kiezen.
Opmerking: U kunt ongewenste JOIN-componenten verwijderen door op de 'x' te klikken die wordt weergegeven wanneer u met de muis over de rechterkant van de JOIN-component beweegt.
Wanneer u klaar bent, sluit u het dialoogvenster Een join maken en het join-canvas.
Nadat u een join hebt gemaakt, gaat u naar Joins maken van uw data. Zie Joins maken van uw data voor het oplossen van problemen met uw join.
Anatomie van een join
Joins worden gedefinieerd door hun type en door de JOIN-component.
Join-typen
Over het algemeen zijn er vier typen joins die u in Tableau kunt gebruiken: Binnen, Links, Rechts en Volledig buiten. Als u niet zeker weet welk join-type u wilt gebruiken om data uit meerdere tabellen te combineren, kunt u het beste relaties gebruiken.
Join-type | Resultaat |
Binnen | Wanneer u een binnenste join gebruikt om tabellen te combineren, is het resultaat een tabel met waarden die in beide tabellen overeenkomsten bevatten. Wanneer een waarde geen overeenkomsten heeft in beide tabellen, wordt deze volledig verwijderd. |
Links | Wanneer u een linker join gebruikt om tabellen te combineren, is het resultaat een tabel die alle waarden uit de linkertabel en de bijbehorende overeenkomsten uit de rechtertabel bevat. Wanneer een waarde in de linkertabel niet overeenkomt met de waarde in de rechtertabel, ziet u een null-waarde in het dataraster. |
Rechts | Wanneer u een rechter join gebruikt om tabellen te combineren, is het resultaat een tabel met alle waarden uit de rechtertabel en de bijbehorende overeenkomsten uit de linkertabel. Wanneer een waarde in de rechtertabel geen overeenkomstige waarde in de linkertabel heeft, ziet u een null-waarde in het dataraster. |
Volledig buiten | Wanneer u een volledig buitenste join gebruikt om tabellen te combineren, is het resultaat een tabel die alle waarden uit beide tabellen bevat. Wanneer een waarde uit een van de tabellen geen overeenkomstige waarde in de andere tabel heeft, ziet u een null-waarde in het dataraster. |
Vereniging | Hoewel vereniging geen join is, is vereniging een andere methode om twee of meer tabellen te combineren door rijen met data uit de ene tabel aan de andere toe te voegen. Idealiter hebben de tabellen die u verenigt hetzelfde aantal velden en hebben die velden overeenkomende namen en datatypen. Zie Uw data verenigen voor meer informatie over verenigen. |
Niet alle databases ondersteunen alle join-typen. Als een optie niet beschikbaar is in het dialoogvenster Een join maken, komt dit waarschijnlijk door een beperking in uw databron.
JOIN-componenten
Een join wordt uitgevoerd door het instellen van een of meer JOIN-componenten. De JOIN-component vertelt Tableau welke velden tussen de tabellen worden gedeeld en hoe de bijbehorende rijen moeten worden gekoppeld. Rijen met dezelfde ID worden bijvoorbeeld uitgelijnd in de resultatentabel.
Bij JOIN-componenten wordt meestal de gelijkheidsoperator (=) gebruikt, die rijen met dezelfde waarden met elkaar overeenstemt. Het is ook mogelijk om non-equi-joins uit te voeren, zoals kleiner dan (<) en niet gelijk aan (<>).
Een join kan ook meerdere JOIN-componenten hebben. Als Voornaam en Achternaam bijvoorbeeld in aparte kolommen zijn opgeslagen, kan het nuttig zijn om alleen een join te maken als 'Voornaam = Voornaam' en 'Achternaam = Achternaam'. Om een join te maken van rijen, moeten beide voorwaarden vervuld zijn. Als het doel daarentegen is om resultaten te retourneren wanneer de achternaam wordt gedeeld maar de voornaam niet, kunnen de JOIN-componenten 'Voornaam <> Voornaam' en 'Achternaam = Achternaam' zijn.
JOIN-componenten kunnen ook berekeningen bevatten. De JOIN-component kan bijvoorbeeld de aaneenschakeling zijn van de naamvelden '[Voornaam] + [Achternaam] = [Voornaam] + [Achternaam]'. Houd er rekening mee dat niet alle databronverbindingen berekeningen in JOIN-componenten ondersteunen.
Over null-waarden in join-sleutels
Over het algemeen worden joins uitgevoerd op databaseniveau. Als de velden die worden gebruikt om joins te maken van tabellen null-waarden bevatten, retourneren de meeste databases data zonder de rijen die de null-waarden bevatten. Voor bepaalde databronnen met één verbinding biedt Tableau echter een extra optie waarmee u een join kunt maken van velden met null-waarden met andere velden met null-waarden.
Nadat u uw databron hebt ingesteld, selecteert u op de pagina Databron Data > Join maken van null-waarden met null-waarden.
Als de optie grijs is, is deze niet beschikbaar voor uw databron. Houd er rekening mee dat als u een tweede verbinding toevoegt aan een databron die deze optie gebruikt, de join terugkeert naar het standaardgedrag van het uitsluiten van rijen met null-waarden.
Joins op basis van meerdere databases
Tableau staat joins toe van tabellen in verschillende databronnen, maar er gelden wel enkele beperkingen wat betreft de compatibiliteit van de databaseplatforms. Voor joins op basis van meerdere databases is een databron met meerdere verbindingen nodig. Dat wil zeggen dat u een nieuwe verbinding met elke database maakt voordat u een join maakt van de tabellen.
- Zodra u verbinding hebt gemaakt met de eerste databron, gebruikt u de optie Toevoegen in het deelvenster Data om nog een verbinding toe te voegen.
Opmerking: Als de connector die u wenst niet beschikbaar is via de lijst Verbinding maken wanneer u een andere verbinding probeert toe te voegen, worden joins op basis van meerdere databases niet ondersteund voor de combinatie van bronnen waarvoor u een join wilt maken. Dit omvat verbindingen met kubusdata (bijvoorbeeld Microsoft Analysis Services), de meeste data die alleen worden geëxtraheerd (bijvoorbeeld Google Analytics en OData) en gepubliceerde Tableau Server-databronnen.
- Hierdoor ontstaat er een tweede verbinding in plaats van een compleet andere databron. U kunt schakelen tussen de twee (of meer) verbindingen terwijl u zich op het tabblad Databron bevindt.
- Zodra u naar een werkblad gaat en met de analyse begint, fungeert de databron als één gecombineerde databron. Dit staat in contrast met twee onafhankelijke databronnen waartussen u in een werkblad kunt schakelen.
Opmerking: Normaal gesproken levert het maken van joins van tabellen uit dezelfde database betere prestaties op. Dit komt doordat het minder tijd kost om data op te vragen die in dezelfde database zijn opgeslagen en de ingebouwde mogelijkheden van de database worden benut om de join uit te voeren. Zie Prestaties verbeteren voor joins op basis van meerdere databases voor meer informatie over de prestaties van joins op basis van meerdere databases.