Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

În acest tutorial, vom discuta despre tabelele și vizualizările temporare SQL . Aceste două pot fi utile dacă doriți să extrageți un anumit set de date dintr-un tabel fizic pentru testare și depanare. Vom vorbi, de asemenea, despre cele 2 tipuri de tabele temporare și despre diferențele lor.

Cu tabele și vizualizări temporare SQL, puteți manipula în mod liber setul de date folosind mai multe comenzi fără a-l interoga în mod repetat, deoarece este deja stocat într-un tabel separat.

Chiar dacă acestea două funcționează în mod similar, trebuie să țineți cont de diferențele lor. Acest lucru vă va ajuta să decideți cea mai bună metodă pe care o puteți utiliza într-o situație specifică.

Pe baza numelui în sine, tabelele temporare sunt folosite pentru a stoca datele temporar într-o sesiune.

De asemenea, putem face mai multe operații pe ele la fel ca pe o masă fizică . Imaginați-vă că aveți o comandă SQL care este foarte lungă. Puteți pur și simplu să puneți asta într-un tabel temporar și să începeți depanarea sau depanarea erorilor fără a afecta interogarea inițială. Mai mult, tabelele temporare sunt puternice și adesea folosite în SQL.

Cuprins

Două tipuri de tabele temporare în SQL

Există 2 tipuri de tabele temporare în SQL. Acestea sunt tabelele temporare locale și globale.

Tabelele temporare locale există doar într-o sesiune în care au fost create. Nu vom putea accesa acest tabel în alte sesiuni. Din această cauză, tabelele temporare locale nu vor mai exista odată ce sesiunea în care a fost creată este închisă.

În schimb, tabelele temporare globale sunt accesibile în toate sesiunile atunci când sunt create. Dar odată ce toate sesiunile sunt închise, acesta nu va mai exista și nu va mai fi accesibil.

Rețineți că puteți identifica pur și simplu ce tip de tabel temporar este utilizat într-o interogare, verificând simbolul „ # ” pentru local și „ ## ” pentru tabelul temporar global.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Tabelele temporare locale încep de obicei cu „ # ” în numele tabelului.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Pe de altă parte, tabelele temporare globale încep cu „ ## ” înaintea numelui tabelului.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

În plus, dacă doriți să creați rapid orice tabel, puteți urma comanda: SELECT * INTO #clienți FROM dbo.courses ca exemplu.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Această comandă va crea un nou tabel temporar numit #clienți cu toate datele din tabelul dbo.courses .

Vizualizări în Microsoft SQL Server Management Studio

Să discutăm acum vederile SQL cu acest exemplu de comandă.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Să presupunem, de exemplu, că nu vrem să executăm în mod repetat o comandă ca aceasta. Puteți să-l puneți pur și simplu într-o vizualizare urmând comanda de mai jos.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Crearea unei vizualizări este similară cu crearea tabelelor. Folosirea acestui lucru ne va permite să executăm interogarea pe care am introdus-o selectând numele vizualizării pe care am creat-o. În acest caz, este CustomersbyYear_v .

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Este important să rețineți că vizualizările sunt diferite de tabelele temporare. Asta pentru că vizualizările sunt vizibile în baza ta de date la fel ca un tabel fizic, cu excepția cazului în care îl ștergi. În plus, vizualizările nu stochează date sau valori.

În schimb, va reda comanda pe care ați introdus-o imediat după comanda CREATE VIEW . De asemenea, puteți rula orice operație de tabel în vizualizări.

Cel mai important, putem identifica cu ușurință vizualizările, deoarece acestea sunt de obicei reprezentate prin punerea „v” la începutul sau la sfârșitul numelui vizualizării.

Crearea tabelelor și vizualizărilor temporare în SQL

Pentru acest exemplu, am această interogare care va combina și afișa înregistrările din Sales.SalesOrderHeader și Sales.Customer C după ce o execut.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Crearea tabelelor temp locale în SQL

Imaginați-vă că ați scris o interogare care are 200 de linii și trebuie să depanați și să efectuați anumite operațiuni pe ea. Nu puteți edita direct interogarea, deoarece ar putea cauza mai multe erori în timpul procesului.

În acest caz, folosind exemplul anterior, vom crea un tabel temporar local adăugând comanda „ INTO #test_local ” înainte de comanda FROM.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Odată ce rulăm această comandă, #test_local va conține acum înregistrările combinate ale Sales.SalesOrderHeader și Sales.Customer C . Ca rezultat, aceasta este ceea ce veți vedea când selectați tabelul #test_local .

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

După aceea, acum putem efectua orice operațiuni pe tabelul #test_local . Vom selecta toate înregistrările din #test_local , apoi vom schimba ordinea înregistrărilor după CustomerID utilizând următoarea comandă. 

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Ca urmare, înregistrările sunt acum sortate după ID-ul lor de client. Dar, deoarece am folosit un tabel temporar local, nu putem accesa sau folosi tabelul #test_local într-o altă sesiune. Următorul exemplu arată ce se va întâmpla dacă încercăm să accesăm #test_local în SQLQuery2.sql .

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Pe baza exemplului anterior, la selectarea #test_local , a afișat doar un mesaj de eroare. Acest lucru se datorează faptului că tabelul #test_local există doar în sesiunea în care a fost creat, care este SQLQuery1.sql .

Crearea tabelelor globale Temp în SQL

În continuare, vom folosi aceeași interogare pe care am folosit-o în #test_local . Dar de data aceasta, vom folosi un global .

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Acum, dacă selectăm ##test_global și comandăm înregistrările după CustomerID, va afișa aceeași ieșire ca ceea ce am avut în #test_local, deoarece am folosit aceeași interogare. 

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

După aceea, vom încerca să accesăm tabelul ##test_global într-o altă sesiune selectând-o. Acest lucru funcționează fără probleme, deoarece folosim un tabel temporar global.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

În acest moment, evidențiem diferența dintre tabelele temp locale și globale.

Rețineți că tabelele temporare locale sunt accesibile numai într-o sesiune în care au fost create . Odată ce închideți acea sesiune, nu va mai exista.

Pe de altă parte, tabelele globale temporale sunt vizibile pentru toate sesiunile , cu excepția cazului în care închideți toate sesiunile active sau aplicația în sine.

Crearea vizualizărilor în SQL

Acum vom crea o vizualizare. În acest exemplu, avem o interogare existentă ca aceasta.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Putem începe să creăm o vizualizare adăugând comanda CREATE VIEW la acea interogare.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

La rularea comenzii, o vizualizare va fi creată în baza de date la care lucrăm. În acest caz, este AdventureWorks2012 .

Ar trebui să vedem și dbo.CustomerView_v în folderul Vizualizări după reîmprospătarea acestuia. Pentru a reîmprospăta folderul Vizualizări, faceți clic dreapta pe el, apoi selectați Actualizează .

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Faceți clic pe pictograma + din dreapta folderului Vizualizări și dbo.CustomerView_v va fi vizibil.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Puteți deschide această vizualizare făcând clic dreapta pe dbo.CustomerView_v , apoi alegeți Selectați Top 1000 de rânduri din opțiuni. Aceasta va afișa 1000 de înregistrări în acea vizualizare .

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

După aceasta, putem acum să folosim dbo.CustomerView_v și să efectuăm orice operație pe el la fel ca un tabel. De exemplu, dorim să selectăm înregistrările cu SalesOrderID mai mare de 50000 în dbo.CustomerView_v . În acest caz, vom folosi următoarea comandă.

Tabele Temp SQL și vizualizări pentru utilizatorul LuckyTemplates

Acum putem rula o operațiune pe vizualizarea pe care am creat-o.

Concluzie

Pentru a rezuma, am învățat cele 2 tipuri de tabele temporare împreună cu diferențele lor și de ce trebuie să le folosim. În plus, am discutat că tabelele temporare servesc ca o modalitate de a remedia erorile din interogările dvs. fără a deteriora interogarea reală.

Rețineți că tabelele temporare sunt vizibile numai pentru sesiunile în care au fost create. Prin urmare, nu va mai exista după ce am închis sesiunile active sau aplicația în sine.

De asemenea, am aflat că vizualizările nu stochează date sau înregistrări. Afișează numai rezultate bazate pe interogarea pe care doriți să o redați. Aceste vizualizări sunt stocate în baza noastră de date odată ce le creăm. 

Învățând aceste două, aveți acum capacitatea de a executa rapid comenzi lungi și de a modifica cu ușurință bucăți mari de seturi de date .

Toate cele bune,

Hafiz

Leave a Comment

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Cum să salvați și să încărcați un fișier RDS în R

Cum să salvați și să încărcați un fișier RDS în R

Veți învăța cum să salvați și să încărcați obiecte dintr-un fișier .rds în R. Acest blog va trata, de asemenea, cum să importați obiecte din R în LuckyTemplates.

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

În acest tutorial despre limbajul de codare DAX, aflați cum să utilizați funcția GENERATE și cum să schimbați în mod dinamic titlul unei măsuri.

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Acest tutorial va acoperi cum să utilizați tehnica Multi Threaded Dynamic Visuals pentru a crea informații din vizualizările dinamice de date din rapoartele dvs.

Introducere la filtrarea contextului în LuckyTemplates

Introducere la filtrarea contextului în LuckyTemplates

În acest articol, voi trece prin contextul filtrului. Contextul de filtrare este unul dintre subiectele majore despre care orice utilizator LuckyTemplates ar trebui să învețe inițial.

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Vreau să arăt cum serviciul online LuckyTemplates Apps poate ajuta la gestionarea diferitelor rapoarte și informații generate din diverse surse.

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Aflați cum să vă calculați modificările marjei de profit folosind tehnici precum măsurarea ramificării și combinarea formulelor DAX în LuckyTemplates.

Idei de materializare pentru cache-urile de date în DAX Studio

Idei de materializare pentru cache-urile de date în DAX Studio

Acest tutorial va discuta despre ideile de materializare a cache-urilor de date și despre modul în care acestea afectează performanța DAX-ului în furnizarea de rezultate.

Raportare de afaceri folosind LuckyTemplates

Raportare de afaceri folosind LuckyTemplates

Dacă încă utilizați Excel până acum, atunci acesta este cel mai bun moment pentru a începe să utilizați LuckyTemplates pentru nevoile dvs. de raportare a afacerii.

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți