Oefening: tabelresultaten combineren met behulp van de opzoekoperator
In de vorige oefening hebt u de join
operator gebruikt om de totale verkoop per product te vinden. In deze oefening gebruikt u de lookup
operator om de totale verkoop per land/regio te vinden.
lookup
De operator gebruiken
Uw verkoopteam wil weten wat de totale verkoop per land/regio van het bedrijf is. U kunt een join
operator gebruiken om de klant- en productgegevens op te halen. Dit type query presteert echter het beste wanneer u de lookup
operator gebruikt om deze informatie op te halen.
U herinnert zich nog dat de lookup
operator een feitentabel verrijkt met gegevens uit een dimensietabel . Het is een beetje als het lezen van een boek (feitentabel) en het opzoeken van onbekende woorden in een woordenlijst (dimensietabel).
Voor deze query begint u met de tabel SalesFact en gebruikt u de lookup
operator om klantgegevens op te halen en toe te voegen aan de resulterende tabel.
In de volgende procedure bouwt u de query in fasen om uzelf een beter inzicht te geven in het resultaat van het gebruik van de lookup
operator.
Voer de volgende query uit om 10 overeenkomende willekeurige rijen op te halen uit de tabel SalesFact en de tabel Klanten .
SalesFact | lookup Customers on CustomerKey | take 10
Bekijk de resulterende lijst. U ziet dat de resulterende tabel kolommen bevat uit de tabel SalesFact , gevolgd door overeenkomende kolommen uit de tabel Klanten .
Voer de volgende query uit om de totale verkoop per land/regio op te halen.
SalesFact | lookup Customers on CustomerKey | summarize TotalSales = count() by RegionCountryName | order by TotalSales desc
Uw resultaten moeten eruitzien zoals in de volgende afbeelding:
Bekijk de resulterende lijst. U ziet dat de belangrijkste verkopen in de Verenigde Staten staan. Wijzig de query om de totale verkoop in de Verenigde Staten per staat weer te geven.
In de vorige eenheid hebt u een rightouter join
gebruikt om de totale verkoop per productcategorie op te halen. Deze query duurde 0,834 seconden om uit te voeren. Schrijf nu een query om hetzelfde resultaat te krijgen met behulp van de lookup
operator en vergelijk vervolgens de uitvoeringstijd.
Voer de volgende query uit.
SalesFact | lookup Products on ProductKey | summarize TotalSales = count() by ProductCategoryName | order by TotalSales desc
Uw resultaten moeten eruitzien zoals in de volgende afbeelding:
U ziet dat u dezelfde resultaten krijgt, maar de uitvoeringstijd is 0,398 seconden. De snellere uitvoeringstijd is omdat de
lookup
operator is geoptimaliseerd voor dit type query.