Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Přepněte služby pomocí rozevíracího seznamu Verze . Přečtěte si další informace o navigaci.
Platí pro: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel
Spojení dat z více tabulek umožňuje analyzovat data napříč zdroji a vytvářet relace mezi datovými body. V dotazovacím jazyce Kusto (KQL) použijte operátory spojení a vyhledávání ke kombinování dat napříč tabulkami.
V tomto návodu se naučíte, jak:
Příklady v tomto kurzu používají StormEvents tabulku, která je veřejně dostupná v clusteru nápovědy. Pokud chcete prozkoumat vlastní data, vytvořte si vlastní bezplatný cluster.
Příklady v tomto kurzu používají StormEvents tabulku, která je veřejně dostupná v ukázkových datech analýzypočasí.
Požadavky
Spusťte dotazy v prostředí dotazu, které má přístup k ukázkovým datům. Použijte jednu z následujících možností:
- Účet Microsoft nebo identita uživatele Microsoft Entra pro přihlášení ke clusteru nápovědy
- Účet Microsoft nebo identita uživatele Microsoft Entra
- Pracovní prostor Fabric s kapacitou Microsoft Fabric
Použití operátoru join
Databáze Samples obsahuje dvě související tabulky bouřkových událostí: StormEvents a PopulationData. V této části je spojíte, abyste analyzovali data, která není možná s jedinou tabulkou.
Vysvětlení dat
Pomocí operátoru take můžete zjistit, jaká data každá tabulka obsahuje.
StormEvents
| take 5
Následující tabulka ukazuje pouze šest z 22 vrácených sloupců.
| Počáteční čas | EndTime | EpisodeId | EventId | State | Typ události | ... |
|---|---|---|---|---|---|---|
| 2007-09-20T21:57:00Z | 2007-09-20T22:05:00Z | 11078 | 60913 | FLORIDA | Tornádo | ... |
| 2007-12-20T07:50:00Z | 2007-12-20T07:53:00Z | 12554 | 68796 | MISSISSIPPI | Větrná bouře | ... |
| 2007-12-30T16:00:00Z | 2007-12-30T16:05:00Z | 11749 | 64588 | GEORGIA | Větrná bouře | ... |
| 2007-09-29T08:11:00Z | 2007-09-29T08:11:00Z | 11091 | 61032 | ATLANTICKÝ JIH | Okapová trouba | ... |
| 2007-09-18T20:00:00Z | 2007-09-19T18:00:00Z | 11074 | 60904 | FLORIDA | Těžký déšť | ... |
PopulationData
| take 5
Výstup
| State | Počet obyvatel |
|---|---|
| ALABAMA | 4918690 |
| ALJAŠKA | 727951 |
| ARIZONA | 7399410 |
| ARKANSAS | 3025880 |
| KALIFORNIE | 39562900 |
Obě tabulky mají State sloupec.
StormEvents má mnoho dalších sloupců a PopulationData má jeden druhý sloupec se stavem populace.
Spojení tabulek
Proveďte spojení PopulationData s StormEvents na State pro výpočet celkových škod na majetku na obyvatele podle jednotlivých států.
StormEvents
| summarize PropertyDamage = sum(DamageProperty) by State
| join kind=innerunique PopulationData on State
| project State, PropertyDamagePerCapita = PropertyDamage / Population
| sort by PropertyDamagePerCapita
Přidáním | render columnchart do dotazu vizualizujete výsledek.
Pokud mají sloupce jiné názvy (například StormEvents má State a PopulationData obsahuje StateName), zadejte spojení jako:
StormEvents
| join kind=innerunique PopulationData on $left.State == $right.StateName
$left odkazuje na levou (vnější) tabulku ve spojení: StormEvents.
$right odkazuje na pravou (vnitřní) tabulku: PopulationData.
Tip
join Operátor použijte pro mnoho typů spojení. Podívejte se na seznam druhů spojení.
Použití vyhledávacího operátoru
Operátor vyhledávání optimalizuje dotazy, které obohacují tabulku faktů daty z tabulky dimenzí. Rozšíří tabulku faktů o hodnoty z tabulky dimenzí. Ve výchozím nastavení systém předpokládá, že levá tabulka je větší tabulka faktů a pravá tabulka je menší tabulka dimenzí. Toto výchozí nastavení je opakem předpokladu join operátora.
Cluster nápovědy obsahuje databázi pojmenovanou ContosoSales s prodejními daty. Následující dotaz používá lookup ke sloučení SalesFact tabulek a Products k vrácení celkového prodeje podle kategorie produktů.
SalesFact
| lookup Products on ProductKey
| summarize TotalSales = count() by ProductCategoryName
| order by TotalSales desc
Výstup
| ProductCategoryName | TotalSales |
|---|---|
| Hry a hračky | 966782 |
| TV a video | 715024 |
| Kamery a videokamery | 323003 |
| Počítače | 313487 |
| Domácí spotřebiče | 237508 |
| Zvuk | 192671 |
| Mobilní telefony | 50342 |
| Hudba, filmy a zvukové knihy | 33376 |
Poznámka:
Operátor lookup podporuje pouze dva typy spojení: leftouter a inner.
Spojení tabulek generovaných dotazem
Spojte výsledky ze stejné tabulky.
Předpokládejme, že chcete seznam států, kde se vyskytují jak blesky, tak lavinové události. Pomocí operátoru spojení sloučíte řádky ze dvou dotazů, které vracejí odlišné stavy pro každý typ události ve sloupci State .
StormEvents
| where EventType == "Lightning"
| distinct State
| join kind=inner (
StormEvents
| where EventType == "Avalanche"
| distinct State
)
on State
| project State
Výstup
| State |
|---|
| OREGON |
| UTAH |
| WYOMING |
| WASHINGTONSKÝ |
| KOLORADO |
| IDAHO |
| NEVADA |
Související obsah
- Přečtěte si o různých typech operátoru spojení.
- Proveďte dotazy napříč databázemi a mezi clustery.
- Postupujte podle kurzu Vytváření geoprostorových vizualizací .