Vyhledávací pole PowerApps: Jak přidat a přizpůsobit
Naučte se, jak vytvořit vyhledávací pole PowerApps úplně od začátku a přizpůsobit je tak, aby odpovídalo celkovému tématu vaší aplikace.
V tomto tutoriálu budeme diskutovat o různých agregačních funkcích v SQL a o tom, jak je můžeme používat. V SQL se agregační funkce používají ke shromažďování dat z více řádků do jednoho souhrnného řádku.
Agregační funkce v SQL mohou být velmi užitečné pro analytiky při sumarizaci dat.
Obsah
Běžně používané agregační funkce v SQL
Níže jsou uvedeny některé běžně používané agregační funkce v SQL .
Pamatujte, že funkce a se běžně používají v měnách nebo celočíselných hodnotách. Funkce AVG vrací nejen průměr, ale i průměr sloupce. Agregační funkce je také jediná, která při provádění výpočtů neignoruje hodnoty null.
Udělejme několik ukázkových příkazů pomocí našich pěti agregačních funkcí s ukázkovou tabulkou níže.
Nejprve udělejme příkaz pomocí funkce MAX . Řekněme, že chceme být ve sloupci ProductName. Náš příkaz by měl vypadat asi jako na obrázku níže.
Protože nalézáme produkt s nejvyšší hodnotou, potřebujeme získat jeho cenu, která je ve sloupci ProductPrice . Pro zadání názvu výstupního sloupce vždy vložte alias. Pokud tento příkaz provedeme, zobrazí se nám produkt s nejvyšší hodnotou pouze s jednou hodnotou.
Dále provedeme příkaz pomocí funkce MIN . Protože funkce MIN je do jisté míry podobná funkci MAX , použijeme pouze stejný příklad, jaký jsme použili ve funkci MAX , ale tentokrát najdeme produkt s nejnižší hodnotou.
Když tento příkaz provedeme, načte produkt s nejnižší hodnotou v naší vzorové tabulce.
Nyní udělejme příkaz pomocí funkce COUNT . Řekněme, že chceme najít množství produktů ve sloupci ProductID . Náš příkaz by měl vypadat asi jako na obrázku níže.
Pokud provedeme tento příkaz, ukáže nám množství každého produktu ve sloupci ProductID a jejich příslušnou cenu.
Agregační funkce a klauzule GROUP BY
Nyní pojďme diskutovat o tom, jak můžeme použít více sloupců s . K tomu musíme použít klauzuli GROUP BY .
Většinou se používá v agregačních funkcích, protože vrací jeden záznam z každé skupiny. Také by měly být stále zahrnuty všechny sloupce v příkazu SELECT i bez agregace.
Pojďme diskutovat o tom, jak budeme používat agregační funkce s klauzulí GROUP BY s naší ukázkovou tabulkou níže.
Nejprve zkusme provést příkaz bez použití klauzule GROUP BY, abychom viděli rozdíl. Pojďme najít celkovou částku SaleAmount ve sloupci ProductName . Náš příkaz by měl vypadat asi jako na obrázku níže.
Jak jste si všimli, příkaz je podobný předchozím příkladům, které jsme zmínili na začátku tohoto tutoriálu. Jakmile tento příkaz provedeme, jednoduše vypočítá celkovou částku ve sloupci SaleAmount , což bude 28 .
Nyní uveďme další příklad pomocí klauzule GROUP BY .
Protože používáme klauzuli GROUP BY , můžeme nyní používat více sloupců. Tentokrát chceme vidět celkovou částku prodeje za kategorii.
Klauzule GROUP BY zajistí, že výsledek bude zobrazovat součet prodejů pro každou kategorii, a pokud bude proveden, bude výsledkem obrázek níže.
V tomto příkladu je důležité použít klauzuli GROUP BY, protože pokud ne, dojde k chybě. Důvodem je, že Kategorie není obsažena v klauzuli GROUP BY nebo agregační funkci.
Uveďme stejný příklad, ale tentokrát získáme celkovou částku prodeje také podle ProductName . Náš příkaz by měl vypadat asi jako na obrázku níže.
Jakmile provedeme náš příkaz, výsledek ukáže součet prodejů podle kategorie a podle ProductName .
Pamatujte, že nemůžete používat nebo přistupovat k více sloupcům bez použití klauzule GROUP BY, protože pokud tak učiníte, způsobí to po spuštění příkazu chybu.
Agregační funkce v SQL Server Management Studio (SSMS)
Pojďme nyní diskutovat o tom, jak můžeme použít agregační funkce v . V našich příkladech použijeme níže uvedenou tabulku.
V naší tabulce SalesOrderHeader máme 31 465 řádků dat . V našem prvním příkladu si ukážeme, jak můžeme použít funkci COUNT počítáním řádků v naší tabulce. Náš příkaz by měl vypadat jako na obrázku níže.
Úspěšně jsme spočítali všechny řádky v našem SalesOrderHeader a pojmenovali jsme to jako countofrows . Jakmile tento příkaz provedeme, budeme mít výsledek 31 465 řádků .
Vraťme se k naší datové sadě. Při použití stejné agregační funkce spočítejme, kolik SalesPersonID je v naší tabulce. Náš příkaz by měl znít:
Když spustíme náš příkaz, konkrétně načte data ve sloupci SalesPersonsID a poskytne nám sloupec s názvem countofsalespersons s výsledkem 3806 .
Použití agregačních funkcí v jediném dotazu
Pojďme dále, pojďme diskutovat o tom, jak můžeme použít více agregačních funkcí v jednom dotazu. Při agregaci našich sloupců TotalDue a TaxAmt budeme používat funkce SUM , AVG a MAX .
V jednom dotazu můžeme použít více agregačních funkcí tak, že za každou funkci vložíme čárku.
Jakmile tento příkaz provedeme, náš výsledek by měl vypadat jako na obrázku níže.
Nyní můžeme vidět různé sloupce spolu s jejich příslušnou hodnotou pomocí více agregačních funkcí .
Zkusme provést příkaz, kde způsobí chybu, abychom zdůraznili, proč bychom měli při výběru sloupců používat klauzuli GROUP BY . Použijeme stejný příklad s více funkcemi, ale tentokrát vybereme CustomerID .
Jak vidíte, říká to, že příkaz je neplatný, protože KódZákazníka není obsaženo ani v agregační funkci , ani v klauzuli GROUP BY .
Ukázkový scénář s doložkou GROUP BY
Pro náš další příklad opravme naši chybu poskytnutím klauzule GROUP BY v našem příkazu.
Právě jsme přidali CustomerID do klauzule GROUP BY a nyní můžeme vidět součet, průměr a maximální hodnotu našich TotalDue a TaxAmt podle CustomerID. Můžeme také vidět, že máme celkem 19119 řádků .
Podívejme se na náš poslední příklad a probereme, proč je pro nás důležité zajistit, aby neagregované sloupce a výrazy byly zahrnuty do klauzule GROUP BY .
V naší tabulce SalesOrderHeader máme sloupec OrderDate . Řekněme, že chceme získat součet TotalDue podle roku. Pokud nebudeme označovat všechny neagregované sloupce a výrazy, musíme použít příkaz z obrázku níže.
Všimněte si, jak jsme schopni získat výsledek spíše než chybu. Máme však více zpráv pro stejný rok, kdy naším cílem je, aby zprávy byly shrnuty do jedné konkrétní hodnoty za rok.
Abychom napravili naši chybu, musíme se ujistit, že výraz zahrneme také do naší klauzule GROUP BY . Náš nový příkaz by měl být:
Po provedení příkazu můžeme vidět, že jsme úspěšně získali součet OrderDate za rok.
Závěr
Abych to shrnul, naučili jste se některé základní znalosti týkající se použití agregačních funkcí v SQL. Agregační funkce mohou být velmi ideální při práci s velkými sestavami nebo datovými sadami, protože poskytují analytikům pohodlí během analýzy a sumarizace dat.
Doufejme, že vám tento tutoriál pomůže lépe procvičit používání různých agregačních funkcí v SQL. Chcete-li se o tomto tématu a dalším souvisejícím obsahu dozvědět více, určitě se můžete podívat na seznam relevantních odkazů níže.
Vše nejlepší,
Hafiz
Naučte se, jak vytvořit vyhledávací pole PowerApps úplně od začátku a přizpůsobit je tak, aby odpovídalo celkovému tématu vaší aplikace.
Sklízejte nebo zachycujte hodnotu uvnitř míry a znovu ji použijte v jiném taktu pro dynamické výpočty pomocí SELECTEDVALUE DAX v LuckyTemplates.
Zjistěte, jak vám historie verzí na SharePointu může pomoci vidět vývoj určitých dat a kolika změn prošla.
Zde je nástroj pro vytváření sestav a vizuálů, výběr barevných hexadecimálních kódů, který můžete použít ke snadnému získání barev pro vaše sestavy LuckyTemplates.
Pomocí tabulky období můžete v přehledu snadno zobrazit časové období jako průřez. Použijte M kód k vytvoření dynamického datového výřezu v LuckyTemplates.
Chtěli jsme se ponořit do tabulek četností v Excelu a také do tabulek proporcí. Podívejte se, co to je a kdy je použít.
Zistite, ako stiahnuť a nainštalovať DAX Studio a Tabular Editor 3 a ako ich nakonfigurovať na použitie v LuckyTemplates a v Exceli.
Tento blog obsahuje vizualizáciu Shape Map pre priestorovú analýzu v LuckyTemplates. Ukážem vám, ako môžete efektívne využiť túto vizualizáciu s jej funkciami a prvkami.
V tomto návode predstavujem jedinečný nápad týkajúci sa finančného výkazníctva, ktorý spočíva v prideľovaní výsledkov na vopred určené šablóny tabuliek v rámci LuckyTemplates.
Vytvářejte míry DAX v LuckyTemplates pomocí existujících mír nebo vzorců. Tomu říkám technika větvení opatření.