Gyakorlat – Táblaeredmények egyesítése a keresési operátor használatával
Az előző gyakorlatban az operátorral találta meg az join
egy termékre jutó összes értékesítést. Ebben a gyakorlatban az lookup
operátorral keresheti meg az országonként/régiónkénti összes értékesítést.
lookup
Az operátor használata
Az értékesítési csapat meg szeretné tudni, hogy a vállalat összes eladása országonként/régiónként van-e megadva. Egy operátorral join
lekérheti az ügyfél- és termékinformációkat. Ez a lekérdezés azonban akkor teljesít a legjobban, ha az lookup
operátort használja az információk lekérésére.
Ne feledje, hogy az lookup
operátor egy ténytáblát dimenziótáblából származó adatokkal egészít ki. Ez egy kicsit olyan, mint egy könyv (ténytábla) olvasása és ismeretlen szavak keresése egy szótárban (dimenziótábla).
Ehhez a lekérdezéshez a SalesFact táblát kell használnia, és az operátor használatával lekérheti az lookup
ügyféladatokat, és hozzáadhatja azokat az eredményül kapott táblához.
Az alábbi eljárás során szakaszokban hozza létre a lekérdezést, hogy jobban megértse az operátor használatának lookup
eredményét.
Futtassa a következő lekérdezést, hogy lekérjen 10 egyező tetszőleges sort a SalesFact táblából és a Customers táblából.
SalesFact | lookup Customers on CustomerKey | take 10
Tekintse meg az eredményként kapott listát. Figyelje meg, hogy az eredményül kapott tábla a SalesFact táblából származó oszlopokat, majd a Vevők tábla egyező oszlopait tartalmazza.
Futtassa az alábbi lekérdezést az országonként/régiónkénti összes értékesítés lekéréséhez.
SalesFact | lookup Customers on CustomerKey | summarize TotalSales = count() by RegionCountryName | order by TotalSales desc
Az eredményeknek a következő képen láthatóhoz hasonlóan kell kinéznie:
Tekintse meg az eredményként kapott listát. Figyelje meg, hogy a legnagyobb értékesítés a Egyesült Államok. Próbálja meg módosítani a lekérdezést, hogy állapot szerint jelenítse meg a Egyesült Államok összes értékesítését.
Az előző leckében egy jogkiadótjoin
használt a teljes értékesítés termékkategória szerinti lekéréséhez. A lekérdezés futtatása 0,834 másodpercig tartott. Most írjon egy lekérdezést, hogy ugyanazt az eredményt kapja az lookup
operátor használatával, majd hasonlítsa össze a végrehajtási időt.
Futtassa az alábbi lekérdezést.
SalesFact | lookup Products on ProductKey | summarize TotalSales = count() by ProductCategoryName | order by TotalSales desc
Az eredményeknek a következő képen láthatóhoz hasonlóan kell kinéznie:
Figyelje meg, hogy ugyanazokat az eredményeket kapja, de a végrehajtási idő 0,398 másodperc. A gyorsabb végrehajtási idő az, hogy az
lookup
operátor az ilyen típusú lekérdezésekhez van optimalizálva.