Left outer join
Een van de jointypen die beschikbaar zijn in het dialoogvenster Samenvoegen in Power Query is een left outer join, waarmee alle rijen uit de linkertabel worden bijgehouden en overeenkomende rijen uit de rechtertabel worden opgehaald. Ga voor meer informatie naar het overzicht van samenvoegbewerkingen.
Diagram toont de linkertabel met de kolommen Date, CountryID en Units. De kolom CountryID met nadruk bevat waarden van 1 in rij 1 en 2, 3 in rij 3 en 4 in rij 4. In het diagram ziet u de linkertabel met de kolommen ID en Land. De kolom met nadruk-id's bevat waarden van 1 in rij 1 (die de VS aangeeft), 2 in rij 2 (canada aanduidt) en 3 in rij 3 (die Panama aangeeft). Een tabel onder de eerste twee tabellen bevat de kolommen Date, CountryID, Units en Country. De tabel heeft vier rijen, met de bovenste twee rijen met de gegevens voor CountryID 1, een rij voor CountryID 3 en een rij voor Land-id 4. Omdat de rechtertabel geen id van 4 bevat, bevat de waarde van de vierde rij in de kolom Land null.
In dit artikel worden voorbeeldgegevens gebruikt om te laten zien hoe u een samenvoegbewerking kunt uitvoeren met de left outer join. De voorbeeldbrontabellen voor dit voorbeeld zijn:
Verkoop: Deze tabel bevat de velden Datum, Land-id en Eenheden. CountryID is een geheel getal dat de unieke id van de tabel Landen vertegenwoordigt.
Landen: Deze tabel is een referentietabel met de velden-id en Land. Het id-veld vertegenwoordigt de unieke id voor elke record.
Landentabel met id ingesteld op 1 in rij 1, 2 in rij 2 en 3 in rij 3 en Land ingesteld op VS in rij 1, Canada in rij 2 en Panama in rij 3.
In dit voorbeeld voegt u beide tabellen samen met de tabel Sales als de linkertabel en de tabel Landen als de rechtertabel. De join wordt gemaakt tussen de volgende kolommen.
Veld uit de tabel Sales | Veld uit de tabel Landen |
---|---|
CountryID | Id |
Het doel is om een tabel zoals hieronder te maken, waarbij de naam van het land wordt weergegeven als een nieuwe kolom Land in de tabel Verkoop , zolang de CountryID in de tabel Landen bestaat. Als er geen overeenkomsten zijn tussen de linker- en rechtertabellen, is een null-waarde het resultaat van de samenvoeging voor die rij. In de volgende afbeelding wordt deze null-waarde weergegeven als het geval is voor CountryID 4, die is opgehaald uit de tabel Sales .
Een left outer join uitvoeren:
- Selecteer de verkoopquery en selecteer vervolgens Samenvoegquery's.
- Selecteer In het dialoogvenster Samenvoegen, onder De tabel Rechts voor samenvoegen, Landen.
- Selecteer in de tabel Verkoop de kolom CountryID .
- Selecteer de kolom Id in de tabel Landen.
- Selecteer Links outer in de sectie Soort join.
- Selecteer OK.
Vouw vanuit de zojuist gemaakte kolom Landen het veld Land uit. Schakel het selectievakje Oorspronkelijke kolomnaam als voorvoegsel gebruiken niet in.
Nadat u deze bewerking hebt uitgevoerd, maakt u een tabel die eruitziet als de volgende afbeelding.