Cvičení – kombinování výsledků tabulky pomocí operátoru vyhledávání

Dokončeno

V předchozím cvičení jste použili join operátor k vyhledání celkového prodeje za produkt. V tomto cvičení použijete lookup operátor k vyhledání celkového prodeje za zemi nebo oblast.

Použití operátoru lookup

Váš prodejní tým chce znát celkový prodej společnosti za zemi/oblast. Pomocí operátora join můžete získat informace o zákazníkovi a produktu. Tento druh dotazu ale funguje nejlépe, když k získání těchto informací použijete lookup operátor.

Vzpomeňte si, že lookup operátor rozšiřuje tabulku faktů o data z tabulky dimenzí . Je to trochu jako čtení knihy (tabulky faktů) a vyhledávání neznámých slov ve slovníku (tabulka dimenzí).

Pro tento dotaz začnete tabulkou SalesFact a pomocí operátoru lookup získáte data zákazníků a přidáte je do výsledné tabulky.

V následujícím postupu vytvoříte dotaz ve fázích, abyste lépe porozuměli výsledku použití operátoru lookup .

  1. Spuštěním následujícího dotazu získejte 10 odpovídajících libovolných řádků z tabulky SalesFact a tabulky Customers .

    Spuštění dotazu

    SalesFact
    | lookup Customers on CustomerKey
    | take 10
    

    Podívejte se na výsledný seznam. Všimněte si, že výsledná tabulka obsahuje sloupce z tabulky SalesFact následované odpovídajícími sloupci z tabulky Customers .

  2. Spuštěním následujícího dotazu získejte celkový prodej za zemi nebo oblast.

    Spuštění dotazu

    SalesFact
    | lookup Customers on CustomerKey
    | summarize TotalSales = count() by RegionCountryName
    | order by TotalSales desc
    

    Výsledky by měly vypadat jako na následujícím obrázku:

    Snímek obrazovky s vyhledávacím operátorem s celkovým prodejem za dotaz na zemi nebo oblast a výsledky

  3. Podívejte se na výsledný seznam. Všimněte si, že nejvyšší tržby jsou v USA. Zkuste upravit dotaz tak, aby zobrazoval celkový prodej v USA podle stavu.

V předchozí lekci jste použili rightouter join k získání celkového prodeje podle kategorie produktů. Spuštění dotazu trvalo 0,834 sekund. Teď pomocí operátoru lookup napište dotaz, který získá stejný výsledek, a pak porovnejte dobu provádění.

  1. Spusťte následující dotaz.

    Spuštění dotazu

    SalesFact
    | lookup Products on ProductKey
    | summarize TotalSales = count() by ProductCategoryName
    | order by TotalSales desc
    

    Výsledky by měly vypadat jako na následujícím obrázku:

    Snímek obrazovky s operátorem vyhledávání s celkovým prodejem na dotaz na produkt a výsledky

    Všimněte si, že se zobrazí stejné výsledky, ale doba provádění je 0,398 sekund. Rychlejší doba provádění spočívá v tom, že lookup operátor je optimalizovaný pro tento typ dotazu.