Subinterogare în SQL pentru utilizatorii LuckyTemplates

În acest tutorial, vom învăța și înțelege cum putem utiliza o subinterogare în SQL. O subinterogare este o interogare în cadrul unei alte interogări. De asemenea, o putem numi o interogare imbricată într-o interogare mai mare. Trebuie să fie închis cu o paranteză și folosit în mare parte într-o clauză WHERE .

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Putem folosi subinterogări în SQL atunci când trebuie să aducem date din mai multe tabele.

De exemplu, să presupunem că avem aceste 2 tabele. 

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Aceasta este problema pe care trebuie să o rezolvăm. Trebuie să obținem numele clientului, ID-ul de e-mail și adresa clienților care au cumpărat în 2022. Acest lucru nu este posibil utilizând numai tabelul Clienți , deoarece nu există nicio înregistrare a vânzărilor sau coloana cu data comenzii pe acel tabel. Avem alte moduri de a rezolva asta.

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Cuprins

Preluarea manuală a datelor prin mai multe interogări individuale

În primul rând, deoarece avem CustomerId din tabelul Vânzări , ceea ce putem face este să obținem ID-ul clienților persoanelor care au cumpărat în 2022 din coloana OrderDate din tabelul Vânzări

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Presupunând că acum avem ID-ul clienților ( 1, 3, 5, 7, 8, 9… ) al persoanelor care au cumpărat din 2022, putem crea apoi o altă interogare pentru a obține informațiile acelor clienți prin tabelul Clienți pe baza lor. ID .

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Problema cu această metodă este că am făcut procesul manual. În primul rând, trebuie să obținem ID-ul clienților și să le introducem manual la următoarea interogare pentru a obține informațiile clienților. 

Obținerea automată a datelor prin subinterogare în SQL

În loc să le introducem manual ID-urile, o putem face automat utilizând o subinterogare în SQL . Îl putem folosi împreună cu condiția IN pentru a aduce automat ID-ul clienților sau orice date de care avem nevoie pentru a rezolva o anumită problemă. 

Acesta este un exemplu de ceea ce putem face pentru a rezolva problema. În acest exemplu de interogare, selectăm numele, adresa și ID-ul de e-mail al clienților din tabelul Clienți pe baza ID-ului lor de client care provine din interogarea imbricată. În această interogare imbricată, ID-ul clientului provine din tabelul Vânzări cu data comenzii de 2022.

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Cu această tehnică, nu este nevoie să introducem manual ID-ul de client al persoanelor care au cumpărat din anul 2022. Acesta va fi preluat automat din interogarea imbricată pe care am creat-o. 

Exemplu de scenariu de subinterogare prin SQL Server Management Studio

Să avem acum un scenariu similar și de data aceasta, să o facem în SQL Server Management Studio ( SSMS ). În acest exemplu, avem alte două tabele SalesOrderHeader și SalesTerritory

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Scopul nostru este să obținem toate informațiile despre SalesOrderHeader dintr-o regiune de țară din SUA . În SalesOrderHeader , nu avem coloana regiune de țară. 

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Cu toate acestea, putem folosi coloana TerritoryID care este disponibilă și în tabelul SalesTerritory . De aici putem obține și informații despre regiunea țării, care este coloana CountryRegionCode .

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Din nou, putem face acest lucru manual, obținând mai întâi TerritoryID din tabelul SalesTerritory cu o regiune de țară din SUA

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Vom avea apoi lista de TerritoryID sub regiunea țării SUA .

Subinterogare în SQL pentru utilizatorii LuckyTemplates

După aceea, putem folosi acele ID-uri pentru a obține rezultatul dorit, introducându-le manual în interogarea noastră.

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Dar, în loc să introducem manual ID-urile, o putem face cu ușurință folosind o subinterogare. Trebuie doar să o înlocuim cu prima noastră interogare în care obținem TerritoryID în tabelul SalesTerritory cu o regiune de țară din SUA. 

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Ne va oferi apoi același rezultat ca și procesul manual. 

Subinterogare în SQL pentru utilizatorii LuckyTemplates

Concluzie

Pentru a rezuma, am învățat utilizarea și importanța subinterogării în SQL. De asemenea, am discutat despre sintaxa adecvată pentru crearea anumitor subinterogări. Cu siguranță putem crea mai multe interogări pentru a crea un proces manual de obținere a unei anumite rezultate. Cu toate acestea, putem folosi în schimb utilizarea subinterogării cu clauza WHERE și condiția IN pentru a prelua automat anumite date dintr-un alt tabel.

Sperăm că veți putea folosi această tehnică pentru a obține o utilizare mai eficientă a interogărilor viitoare.

Toate cele bune,

Hafiz

Descărcare și instalare SQL Server
SQL pentru utilizatorii LuckyTemplates – Noul curs LuckyTemplates
Interogarea datelor din mai multe surse de date

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