SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

V tomto návode budeme diskutovať o dočasných tabuľkách a zobrazeniach SQL . Tieto dva môžu byť užitočné, ak chcete z fyzického stola na testovanie a ladenie. Povieme si tiež o 2 typoch dočasných tabuliek a ich rozdieloch.

S dočasnými tabuľkami a zobrazeniami SQL môžete voľne manipulovať s množinou údajov pomocou viacerých príkazov bez toho, aby ste ich museli opakovane dotazovať, pretože sú už uložené v samostatnej tabuľke.

Aj keď tieto dva fungujú podobne, musíte si všimnúť ich rozdiely. To vám pomôže rozhodnúť sa o najlepšej metóde, ktorú môžete použiť v konkrétnej situácii.

Na základe samotného názvu sa dočasné tabuľky používajú na dočasné ukladanie údajov v relácii.

Môžeme s nimi robiť aj viaceré operácie rovnako ako na fyzickom stole . Predstavte si, že máte príkaz SQL, ktorý je veľmi dlhý. Môžete to jednoducho vložiť do dočasnej tabuľky a začať ladiť alebo odstraňovať chyby bez ovplyvnenia pôvodného dotazu. Okrem toho sú dočasné tabuľky výkonné a často používané v SQL.

Obsah

Dva typy dočasných tabuliek v SQL

V SQL existujú 2 typy dočasných tabuliek. Toto sú lokálne a globálne dočasné tabuľky.

Lokálne dočasné tabuľky existujú iba v relácii, kde boli vytvorené. V iných reláciách nebudeme mať prístup k tejto tabuľke. Z tohto dôvodu miestne dočasné tabuľky už nebudú existovať po zatvorení relácie, v ktorej boli vytvorené.

Naproti tomu globálne dočasné tabuľky sú po vytvorení prístupné vo všetkých reláciách. Keď sa však všetky relácie zatvoria, už nebude existovať a nebude viac prístupná.

Všimnite si, že typ dočasnej tabuľky, ktorý sa používa v dotaze, môžete jednoducho identifikovať tak, že začiarknete symbol „ # “ pre lokálnu a „ ## “ pre globálnu dočasnú tabuľku.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Lokálne dočasné tabuľky zvyčajne začínajú znakom „ # “ v názve tabuľky.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Na druhej strane, globálne dočasné tabuľky začínajú znakom „ ## “ pred názvom tabuľky.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Navyše, ak chcete rýchlo vytvoriť akúkoľvek tabuľku, môžete postupovať podľa príkazu: SELECT * INTO #customers FROM dbo.courses ako príklad.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Tento príkaz vytvorí novú dočasnú tabuľku s názvom #customers so všetkými údajmi z tabuľky dbo.courses .

Zobrazenia v Microsoft SQL Server Management Studio

Poďme teraz diskutovať o SQL zobrazeniach s týmto vzorovým príkazom.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Povedzme napríklad, že nechceme opakovane vykonávať takýto príkaz. Môžete ho jednoducho umiestniť do zobrazenia podľa príkazu nižšie.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Vytváranie zobrazenia je podobné vytváraniu tabuliek. Pomocou toho nám umožní vykonať dotaz, ktorý sme zadali výberom názvu zobrazenia, ktorý sme vytvorili. V tomto prípade je to CustomersbyYear_v .

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Je dôležité poznamenať, že zobrazenia sa líšia od dočasných tabuliek. Je to preto, že zobrazenia sú vo vašej databáze viditeľné rovnako ako fyzická tabuľka, pokiaľ ju neodstránite. Okrem toho zobrazenia neukladajú žiadne údaje ani hodnoty.

Namiesto toho iba vykreslí príkaz, ktorý ste zadali hneď po príkaze CREATE VIEW . Môžete tiež spustiť ľubovoľnú operáciu tabuľky v zobrazeniach.

Najdôležitejšie je, že môžeme ľahko identifikovať pohľady, pretože sú zvyčajne reprezentované vložením „v“ na začiatok alebo koniec názvu pohľadu.

Vytváranie dočasných tabuliek a pohľadov v SQL

Pre tento príklad mám tento dotaz, ktorý skombinuje a zobrazí záznamy z Sales.SalesOrderHeader a Sales.Customer C po jeho vykonaní.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Vytváranie lokálnych dočasných tabuliek v SQL

Predstavte si, že ste napísali dotaz, ktorý má 200 riadkov a potrebujete ho odladiť a vykonať určité operácie. Nemôžete to urobiť priamo, pretože to môže spôsobiť viac chýb počas procesu.

V takom prípade pomocou predchádzajúceho príkladu vytvoríme lokálnu dočasnú tabuľku pridaním príkazu „ INTO #test_local “ pred príkaz FROM.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Po spustení tohto príkazu bude #test_local teraz obsahovať kombinované záznamy Sales.SalesOrderHeader a Sales.Customer C . Výsledkom je to, čo uvidíte, keď vyberiete tabuľku #test_local .

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Potom už môžeme vykonávať ľubovoľné operácie v tabuľke #test_local . Vyberieme všetky záznamy z #test_local a potom pomocou nasledujúceho príkazu  zmeníme poradie záznamov podľa CustomerID .

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Výsledkom je, že záznamy sú teraz zoradené podľa ich CustomerID. Ale keďže sme použili lokálnu dočasnú tabuľku, nemôžeme pristupovať ani používať #test_local tabuľku v inej relácii. Nasledujúci príklad ukazuje, čo sa stane, ak sa pokúsime o prístup k #test_local v SQLQuery2.sql .

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Na základe predchádzajúceho príkladu sa po výbere #test_local práve zobrazilo chybové hlásenie. Je to preto, že tabuľka #test_local existuje iba v relácii, kde bola vytvorená, a to je SQLQuery1.sql .

Vytváranie globálnych dočasných tabuliek v SQL

Ďalej použijeme rovnaký dotaz, aký sme použili v #test_local . Tentokrát však použijeme globálne .

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Ak teraz vyberieme ##test_global a zoradíme záznamy podľa CustomerID, zobrazí sa rovnaký výstup, aký sme mali v #test_local , keďže sme použili rovnaký dotaz. 

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Potom sa pokúsime získať prístup k ##test_global tabuľke v inej relácii tak, že ju vyberieme. Funguje to bez problémov, pretože používame globálnu dočasnú tabuľku.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

V tomto bode zdôrazňujeme rozdiel medzi lokálnymi a globálnymi dočasnými tabuľkami.

Pamätajte, že lokálne dočasné tabuľky sú prístupné len v relácii, kde boli vytvorené . Keď túto reláciu zatvoríte, už nebude existovať.

Na druhej strane, globálne dočasné tabuľky sú viditeľné pre všetky relácie , pokiaľ nezatvoríte všetky aktívne relácie alebo samotnú aplikáciu.

Vytváranie pohľadov v SQL

Teraz vytvoríme pohľad. V tomto príklade máme takýto existujúci dotaz.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Vytvorenie pohľadu môžeme začať pridaním príkazu CREATE VIEW do tohto dotazu.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Po spustení príkazu sa v databáze vytvorí pohľad, na ktorom pracujeme. V tomto prípade ide o AdventureWorks2012 .

Po obnovení by sme mali vidieť aj dbo.CustomerView_v v priečinku Views. Ak chcete obnoviť priečinok Zobrazenia, kliknite naň pravým tlačidlom myši a vyberte možnosť Obnoviť .

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Kliknite na ikonu + napravo od priečinka Zobrazenia a zobrazí sa dbo.CustomerView_v .

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Toto zobrazenie môžete otvoriť kliknutím pravým tlačidlom myši na dbo.CustomerView_v a potom z možností vyberte možnosť Vybrať 1000 najlepších riadkov . V tomto zobrazení sa zobrazí 1 000 záznamov .

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Potom môžeme teraz použiť dbo.CustomerView_v a vykonávať s ním akúkoľvek operáciu ako s tabuľkou. Napríklad chceme vybrať záznamy s SalesOrderID väčším ako 50000 v dbo.CustomerView_v . V tomto prípade použijeme nasledujúci príkaz.

SQL Temp tabuľky a zobrazenia pre používateľa LuckyTemplates

Teraz sme schopní spustiť operáciu v zobrazení, ktoré sme vytvorili.

Záver

Aby som to zhrnul, naučili sme sa 2 typy dočasných tabuliek spolu s ich rozdielmi a prečo ich musíme používať. Okrem toho sme diskutovali o tom, že dočasné tabuľky slúžia ako spôsob, ako opraviť chyby vo vašich dotazoch bez poškodenia skutočného dotazu.

Majte na pamäti, že dočasné tabuľky sú viditeľné iba pre relácie, v ktorých boli vytvorené. Preto už nebude existovať, keď ukončíme aktívne relácie alebo samotnú aplikáciu.

Tiež sme sa naučili, že zobrazenia neukladajú údaje ani záznamy. Zobrazuje iba výsledky na základe dotazu, ktorý chcete vykresliť. Tieto pohľady sú uložené v našej databáze, keď ich vytvoríme. 

Naučením sa týchto dvoch máte teraz možnosť rýchlo vykonávať dlhé príkazy a ľahko upravovať veľké kusy množiny údajov .

Všetko najlepšie,

Hafiz


Vyhledávací pole PowerApps: Jak přidat a přizpůsobit

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.

Příklad SELECTEDVALUE DAX – Výběr kráječe sklizně

Příklad SELECTEDVALUE DAX – Výběr kráječe sklizně

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.

Historie verzí v seznamech SharePoint

Historie verzí v seznamech SharePoint

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.

Výběr barevných hexadecimálních kódů pro zprávy LuckyTemplates

Výběr barevných hexadecimálních kódů pro zprávy LuckyTemplates

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.

Dynamický datový výřez v LuckyTemplates pomocí tabulky období

Dynamický datový výřez v LuckyTemplates pomocí tabulky období

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.

Tabulky proporcí a četností v Excelu

Tabulky proporcí a četností v Excelu

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.

Ako nainštalovať DAX Studio & Tabular Editor v LuckyTemplates

Ako nainštalovať DAX Studio & Tabular Editor v LuckyTemplates

Zistite, ako stiahnuť a nainštalovať DAX Studio a Tabular Editor 3 a ako ich nakonfigurovať na použitie v LuckyTemplates a v Exceli.

LuckyTemplates Vizualizácia tvarovej mapy pre priestorovú analýzu

LuckyTemplates Vizualizácia tvarovej mapy pre priestorovú analýzu

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.

LuckyTemplates Finančné výkazníctvo: Prideľovanie výsledkov šablónam v každom jednom riadku

LuckyTemplates Finančné výkazníctvo: Prideľovanie výsledkov šablónam v každom jednom riadku

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.

DAX měří v LuckyTemplates pomocí Measure Branching

DAX měří v LuckyTemplates pomocí Measure Branching

Vytvářejte míry DAX v LuckyTemplates pomocí existujících mír nebo vzorců. Tomu říkám technika větvení opatření.