En sub - query är en typ av SQL-uttryck som kör en fråga i en fråga . Till exempel kör du en sub - query för att hämta data från en tabell , och sedan huvudfrågan hämtar ett slutresultat som från sub - query . Sub - frågor används i komplexa frågor där databasadministratör vill fråga från flera tabeller och kan inte använda standard JOIN uttalande . Sub - Query Arkitektur
En sub - query finns inom din huvudfrågan . Vanligtvis använder databasadministratör JOIN uttalande att ansluta en annan tabell till din huvudsakliga tabellen . Om detta inte är möjligt , är den sub - query för att hämta en lista med poster . Den sub - query körs alltid först , och huvudfrågan filtrerar bort av sub - query . Du kan också ha sub- frågor inom en sub - query . Den innersta query körs alltid först . Addera Skapa en Sub - Query
sub - query är typiskt en " select " fråga . När du skapar din databas program , måste du först definiera sub - query affärsregler . Till exempel använder följande SQL-sats för att returnera en lista över konton i ett användarnamn tabell : SELECT * FROM usernameThe " * " tecknet återgår alla fält från tabellen , så att du kan använda den viktigaste frågan för att visa och filtrera data du behöver visa eller bearbeta . Du kan också filtrera poster i sub - query . Till exempel , använda följande fråga till bara få användarkonton där användarnamnet har ett förnamn på " Jane " : SELECT * FROM användarnamn där namn = ' Jane '
Lägg Main fråga
med definierade sub - query , kan du ställa in huvudfrågan . När du använder en fråga som en sub - query , innehåller du sub - query inom parentes . Till exempel med hjälp av frågan kontonamn ser sub - query som följande : ( SELECT * FROM användarnamn där namn = ' Jane ' ) Att lägga frågan till en huvudfråga , använd följande : sätt in människor ( välj * från användarnamn där namn = ' Jane ' ) Detta utlåtande kopior kontonamn från användarnamnet tabellen och infogar de till " folket " bord .
IN Statement
" iN " uttalande använder en sub - fråga för att hämta en lista över poster som är " i " en annan tabell . Till exempel , om du vill visa en lista över personer med ett ID på " 1 " ligger i en separat tabell med användarnamn , använd följande uttalande : SELECT * FROM konton där ID är ( välj ID från användarnamn där ID = 1 ) detta uttalande får alla konton som har ett användarnamn med ett ID på 1 . Dessa komplexa frågor används när du har flera tabeller med liknande , länkade data .