Underfråga i SQL för LuckyTemplates-användare

I den här handledningen kommer vi att lära oss och förstå hur vi kan använda en underfråga i SQL. En underfråga är en fråga i en annan fråga. Vi kan också kalla det en kapslad fråga i en större fråga. Den måste bifogas en konsol och används oftast i en WHERE -sats.

Underfråga i SQL för LuckyTemplates-användare

Vi kan använda underfrågor i SQL när vi behöver hämta data från flera tabeller.

Låt oss till exempel säga att vi har dessa 2 tabeller. 

Underfråga i SQL för LuckyTemplates-användare

Detta är problemet som vi måste lösa. Vi måste få kundnamn, e-post-ID och adress för de kunder som köpte 2022. Detta är inte möjligt genom att bara använda tabellen Kunder eftersom det inte finns någon försäljnings- eller orderdatumkolumn i den tabellen. Vi har andra sätt att lösa detta.

Underfråga i SQL för LuckyTemplates-användare

Innehållsförteckning

Hämta data manuellt genom flera individuella frågor

För det första, eftersom vi har CustomerId från Sales- tabellen, vad vi kan göra är att få kundernas ID för de personer som köpte 2022 från OrderDate- kolumnen i Sales -tabellen. 

Underfråga i SQL för LuckyTemplates-användare

Om vi ​​antar att vi nu har kund-ID ( 1, 3, 5, 7, 8, 9… ) för de personer som köpte från 2022, kan vi sedan skapa en annan fråga för att få information om dessa kunder genom tabellen Kunder baserat på deras ID .

Underfråga i SQL för LuckyTemplates-användare

Problemet med den här metoden är att vi gjorde processen manuellt. Först måste vi få kundernas ID och manuellt mata in dem i nästa fråga för att få kundernas information. 

Få data automatiskt genom delfråga i SQL

Istället för att manuellt mata in deras ID kan vi göra det automatiskt genom att använda en underfråga i . Vi kan använda det tillsammans med IN- villkoret för att automatiskt ta med kundernas ID eller vilken data som helst som vi behöver för att lösa ett visst problem. 

Det här är ett exempel på vad vi kan göra för att lösa problemet. I den här exempelfrågan väljer vi kundernas namn, adress och e-post-ID från tabellen Kunder baserat på deras kund-ID som kommer från den kapslade frågan. I den här kapslade frågan kommer kund-id:t från försäljningstabellen med ett beställningsdatum 2022.

Underfråga i SQL för LuckyTemplates-användare

Med den här tekniken behöver vi inte manuellt mata in kund-ID för personerna som köpte från år 2022. Det kommer automatiskt att hämtas från den kapslade frågan som vi har skapat. 

Exempel på subquery-scenario via SQL Server Management Studio

Låt oss nu ha ett liknande scenario och den här gången gör vi det i SQL Server Management Studio ( SSMS ). I det här exemplet har vi två andra tabeller SalesOrderHeader och SalesTerritory

Underfråga i SQL för LuckyTemplates-användare

Vårt mål är att få all information om SalesOrderHeader från en region i USA . I SalesOrderHeader har vi inte kolumnen för landregion. 

Underfråga i SQL för LuckyTemplates-användare

Vi kan dock använda kolumnen TerritoryID som också är tillgänglig i SalesTerritory -tabellen. Det är där vi också kan få landsregioninformationen som är kolumnen CountryRegionCode .

Underfråga i SQL för LuckyTemplates-användare

Underfråga i SQL för LuckyTemplates-användare

Återigen, vi kan göra detta manuellt genom att först hämta TerritoryID från SalesTerritory- tabellen med en region  i USA .

Underfråga i SQL för LuckyTemplates-användare

Vi kommer då att ha listan över TerritoryID under landsregionen i USA .

Underfråga i SQL för LuckyTemplates-användare

Efter det kan vi använda dessa ID för att få vårt önskade resultat genom att manuellt mata in dem i vår fråga.

Underfråga i SQL för LuckyTemplates-användare

Underfråga i SQL för LuckyTemplates-användare

Men istället för att manuellt mata in ID:n kan vi göra det enkelt genom att använda en underfråga. Vi behöver bara ersätta det med vår första fråga där vi får TerritoryID i SalesTerritory- tabellen med en amerikansk landsregion. 

Underfråga i SQL för LuckyTemplates-användare

Det kommer då att ge oss samma resultat som den manuella processen. 

Underfråga i SQL för LuckyTemplates-användare

Slutsats

För att sammanfatta, har vi lärt oss användningen och vikten av subquery i SQL. Vi har också diskuterat rätt syntax för att skapa vissa underfrågor. Vi kan säkert skapa flera frågor för att skapa en manuell process för att få en viss utdata. Men vi kan istället använda oss av subquery med WHERE- satsen och IN -villkoret för att automatiskt hämta viss data från en annan tabell.

Förhoppningsvis kommer du att kunna använda den här tekniken för att uppnå en mer effektiv användning av dina framtida frågor.

Med vänliga hälsningar,

Hafiz




Upptäck unika insikter med LuckyTemplates TOPN-funktion

Upptäck unika insikter med LuckyTemplates TOPN-funktion

Den här bloggen innehåller LuckyTemplates TOPN DAX-funktion, som gör att du kan få unika insikter från dina data, vilket hjälper dig att fatta bättre marknadsföringsbeslut.

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Lär dig några fantastiska analytiska tekniker som vi kan göra för datamodellering i LuckyTemplates med hjälp av DAX-stödtabeller.

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Här dyker vi in ​​i LuckyTemplates Advanced DAX och implementerar rankningslogik för att få en mycket unik insikt. Jag visar också upp måttförgrening i det här exemplet.

LuckyTemplates What-If-parameterfunktion

LuckyTemplates What-If-parameterfunktion

Den här bloggen introducerar den nya funktionen i LuckyTemplates, analysparametern What-If. Du kommer att se hur det gör allt snabbt och enkelt för din scenarioanalys.

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Lär dig hur du avgör om din intäktstillväxt är bra genom att kontrollera om dina marginaler ökade med hjälp av LuckyTemplates mäter förgrening.

LuckyTemplates parametrar via frågeredigerare

LuckyTemplates parametrar via frågeredigerare

Lär dig och förstå hur du kan skapa och använda LuckyTemplates-parametrar som är en kraftfull funktion i frågeredigeraren.

Runda stapeldiagram – En visualisering för din instrumentpanel

Runda stapeldiagram – En visualisering för din instrumentpanel

Denna handledning kommer att diskutera hur man skapar ett runt stapeldiagram med Charticulator. Du kommer att lära dig hur du designar dem för din LuckyTemplates-rapport.

PowerApps funktioner och formler | En introduktion

PowerApps funktioner och formler | En introduktion

Lär dig hur du använder PowerApps funktioner och formler för att förbättra funktionaliteten och ändra ett beteende i vår Power Apps canvas-app.

Pipe In R: Anslutningsfunktioner med Dplyr

Pipe In R: Anslutningsfunktioner med Dplyr

I den här handledningen kommer du att lära dig hur du kopplar ihop funktioner med hjälp av dplyr-röroperatorn i programmeringsspråket R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX från LuckyTemplates låter dig returnera rankningen av ett specifikt nummer i varje tabellrad som utgör en del av en lista med nummer.