Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

V tomto blogu budeme diskutovať o niektorých bežných tabuľkových výrazoch, známych aj ako CTE . Ak narazíte na zložité problémy, ich používanie vám môže pomôcť.

Pomocou CTE môžete akúkoľvek úlohu rozdeliť na malé a zvládnuteľné otázky a vyriešiť tak komplikované problémy.

Teraz poďme preskúmať, ako môže CTE zefektívniť vašu prácu pri riešení problémov s kódmi.

Obsah

Syntax na vytváranie bežných výrazov tabuľky SQL 

Najprv musíte zadať „ WITH “, za ktorým nasleduje názov výrazu CTE a potom „ AS “.

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Potom môžete zadať akékoľvek otázky v zátvorkách. Toto bude uložené v zadanom názve výrazu, ktorý bude fungovať ako virtuálna tabuľka.

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Potom pridajte apomocou virtuálnej tabuľky, ktorú ste vytvorili pomocou názvu výrazu, ktorý ste nastavili.

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

V našom príklade použijeme pre názov výrazu „ USACusts “ .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

A pre dotaz použijeme tento kód. 

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Tento dotaz vytvorí virtuálnu tabuľku. Zobrazuje celkovú alebo súhrnnú sumu, ktorá je zoskupená podľa čísla zákazníka, pričom krajina, do ktorej patria, je „ USA “. Údaje budú extrahované z tabuľky Sales.Customers .

Budú viditeľné dva stĺpce, ktoré sú custid a Agg_Amount . Upozorňujeme, že tabuľka USACusts nie je fyzická tabuľka , ale iba virtuálna tabuľka. To znamená, že nebude viditeľný v našej databáze.

Po dotaze môžeme pridať a

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Tento príkaz vyberie všetky Agg_Amount , ktoré sú väčšie ako 1000 z tabuľky USACusts .

Viac bežných výrazov tabuľky SQL 

Viaceré CTE vám môžu pomôcť vyriešiť zložité chyby vo vašom kóde ich rozdelením na menšie časti. Okrem toho môžete definovať toľko CTE , koľko chcete. Nižšie je uvedený príklad viacerých CTE .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

V tomto príklade máme prvý CTE , ktorý je C1 . Odtiaľ sme vybrali ROK (dátum objednávky) a vytvorili sme 2 stĺpce, ktorými sú rok objednávky a zákazník z tabuľky Predaj.Objednávky .

Pre druhý CTE s názvom C2 sme vybrali rok objednávky a zhromaždili sme počet zákazníkov pomocou príkazu COUNT . Potom sme to pomenovali ako numcusty z C1 . V C2 bola pridaná aj podmienka WHERE , ktorá umožňuje vybrať iba rok objednávky , ktorý je vyšší ako 2015 . Potom sme ich zoskupili podľa roka objednávky .

Potom sme vybrali rok objednávky a numcusty z C2 . Potom sme pridali podmienku WHERE , aby sme vybrali iba počet zákazníkov, ktorý je väčší ako 500 .

Stručne povedané, tento kód sa používa na výber zákazníkov, ktorých rok objednávky je vyšší ako 2015 , a výber iba počtu zákazníkov, ktorí sú viac ako 500 na základe podmienky roka objednávky .

Použitie viacerých CTE na riešenie zložitých kódov

Ďalej predvediem ďalšie príklady, aby som ďalej zdôraznil používanie CTE pri riešení problémov s veľkým súborom údajov. Tu je ďalší príklad viacerých CTE .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Upozorňujeme, že CTE môžete pomenovať tak, ako chcete, ale pre tento blog používame C1 , C2 , C3 atď., aby sme ľahko identifikovali a pochopili, ako ich používame v našich príkladoch.

Ak sa vrátime k príkladu, vytvorili sme C1 , aby sme vybrali iba predaje, ktorých množstvo objednávky je väčšie ako 5 z tabuľky Sales.SalesOrderDetails .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Potom v C2 sme použili údaje, ktoré sme uložili v C1 na pripojenie k produktu na základe Product.ID a zoskupili sme ich podľa názvu produktu ( p.Name) a farby produktu (p.Color) .

Keďže sme deklarovali podmienku v C1 , v C2 zoskupíme iba názov produktu a farbu produktu pre objednávky, kde je množstvo objednávky (OrderQty) väčšie ako 5 .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Potom použijeme príkaz na výber všetkých údajov z C2 s množstvom objednávky, ktoré je väčšie ako 1000 .

Na účely riešenia problémov môžete jednoducho vybrať každý z CTE , ktorý ste vytvorili, a skontrolovať, či zobrazuje správne údaje. Pozrite si príklady nižšie.

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Pre C1 zobrazuje všetky údaje z tabuľky Sales.SalesOrderDetail s množstvom objednávky, ktoré je väčšie ako 5 .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Potom C2 zobrazí výstup množstva objednávky, ktoré je zoskupené podľa názvu produktu a farby z C1 . V C2 môžeme vidieť stĺpec orderqty , ale v skutočnosti ho nemáme v C2 , pretože je to len vypočítaný stĺpec, ktorý sme vygenerovali z C1 . Odtiaľ môžeme začať používať ľubovoľnú podmienku v stĺpci orderqty a vykonávať riešenie problémov.

Teraz teda môžete vidieť, ako nám viaceré CTE môžu pomôcť pri riešení chýb v zložitých kódoch ich uložením do CTE a začať odstraňovať problémy bez poškodenia skutočného kódu.

Používanie CTE s vyhlásením o prípade

Ukážme si ďalší príklad s rovnakým kontextom, ktorý ukáže, ako môžeme využiť viacero CTE pri riešení problémov so zložitými kódmi. 

V tomto prípade použijeme príkaz CASE , ktorý vytvorí stĺpec Kategória produktu s výsledkami, ktoré sú založené na súhrnnom množstve objednávky z C2 .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Ako už bolo spomenuté, nemali sme orderqty v prvej CTE ani v kategórii produktov, ale na výpočet a vykonávanie rôznych výpočtov sme použili prechodné tabuľky.

V ďalšom príklade vytvoríme súhrnnú sumu na základe sumy, ktorú sme vytvorili v predchádzajúcom príklade. Aby sme to však urobili, vložíme príkaz CASE pre kategóriu produktu do tretieho CTE , ktorým je C3 .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Predtým, ako budeme pokračovať, skontrolujme výstup C3 pridaním „ SELECT * FROM C3 “ pod C3 .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

V C3 môžeme vidieť stĺpce ProductName , Color , orderqty a Product Category . Odtiaľ môžeme začať agregovať na základe kategórie produktov . Urobme to pomocou nasledujúceho príkazu pod C3 .

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Nižšie uvedený príklad je výsledkom po vytvorení agregovanej sumy pomocou vyššie uvedeného príkazu.

Bežné výrazy tabuliek SQL pre používateľov LuckyTemplates

Spočiatku sme nemali stĺpce Kategória produktu a Objednávka , ale pomocou viacerých CTE sme schopní generovať vzorové výstupy na základe týchto stĺpcov .

V tomto bode môžete vidieť, že s pomocou CTE dokážeme urobiť čokoľvek, aby sme efektívnejšie pracovali s našimi kódmi.



Záver

V tomto návode ste sa naučili správnu syntax pri vytváraní bežných výrazov SQL tabuľky a ako používať viacero CTE pri riešení problémov so zložitými kódmi izoláciou malých častí údajov a ich ukladaním do daného CTE .

Keď sa to naučíte, máte teraz možnosť ladiť svoje kódy efektívnejšie. Pamätajte, že pre CTE môžete použiť akýkoľvek názov a nemôžete použiť ani volať žiadne CTE , pokiaľ nie je vytvorené. Keď sa zoznámite s CTE , môžete sa považovať za mierneho používateľa.

Ak sa chcete dozvedieť viac o tejto téme a inom súvisiacom obsahu, určite si môžete pozrieť zoznam relevantných odkazov nižšie.

Všetko najlepšie,

Hafiz


Vytvoření tabulky data v LuckyTemplates

Vytvoření tabulky data v LuckyTemplates

Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.

LuckyTemplates Mobile Reporting Tipy a techniky

LuckyTemplates Mobile Reporting Tipy a techniky

Tento stručný návod zdůrazňuje funkci mobilního hlášení LuckyTemplates. Ukážu vám, jak můžete efektivně vytvářet přehledy pro mobily.

Profesionální servisní analytické zprávy v LuckyTemplates

Profesionální servisní analytické zprávy v LuckyTemplates

V této ukázce LuckyTemplates si projdeme sestavy ukazující profesionální analýzy služeb od firmy, která má více smluv a zákaznických vztahů.

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Pozrite si kľúčové aktualizácie pre Power Apps a Power Automate a ich výhody a dôsledky pre platformu Microsoft Power Platform.

Bežné funkcie SQL: Prehľad

Bežné funkcie SQL: Prehľad

Objavte niektoré bežné funkcie SQL, ktoré môžeme použiť, ako napríklad reťazec, dátum a niektoré pokročilé funkcie na spracovanie alebo manipuláciu s údajmi.

Vytvoření šablony LuckyTemplates: Průvodce a tipy

Vytvoření šablony LuckyTemplates: Průvodce a tipy

V tomto tutoriálu se naučíte, jak vytvořit dokonalou šablonu LuckyTemplates, která je nakonfigurována podle vašich potřeb a preferencí.

Parametry pole a malé násobky v LuckyTemplates

Parametry pole a malé násobky v LuckyTemplates

V tomto blogu si ukážeme, jak vrstvit parametry pole s malými násobky, abychom vytvořili neuvěřitelně užitečné přehledy a vizuály.

LuckyTemplates Rank a vlastní seskupení

LuckyTemplates Rank a vlastní seskupení

V tomto blogu se dozvíte, jak používat funkce hodnocení LuckyTemplates a vlastní seskupování k segmentaci ukázkových dat a jejich seřazení podle kritérií.

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

V tomto tutoriálu se budu zabývat konkrétní technikou, jak zobrazit kumulativní součet pouze do určitého data ve vašich vizuálech v LuckyTemplates.

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Naučte se vytvářet a přizpůsobovat Bullet grafy v LuckyTemplates, které se používají hlavně pro měření výkonu oproti cílovým nebo předchozím rokům.