single
Gebruik van Interne Subquery's in de FROM-Sectie
Veeg om het menu te tonen
Een interne subquery maakt een tabel waarmee je vervolgens bewerkingen uitvoert in de buitenste query.
Hieruit kun je concluderen dat je ook een interne query kunt gebruiken binnen de FROM-sectie om iets uit deze tabel te selecteren.
Bekijk een voorbeeld waarbij je moet werken met employees waarvan het salary boven een bepaalde waarde ligt. Maar in plaats van een WHERE-clausule, moet je een interne query gebruiken:
123456SELECT * FROM ( SELECT * From employees WHERE salary >= 70000 ) AS high_salary_employees
Er is een nieuwe tabel gemaakt met een interne subquery waarmee je kunt werken en informatie kunt verzamelen.
Let op dat het bij zo'n tabel essentieel is om een alias op te geven.
Wanneer kan dit nuttig zijn?
Zo'n query is zeer leesbaar; soms kan het een WHERE-clausule vervangen.
Bovendien, als je niet met de volledige tabel wilt werken maar alleen met een gefilterd deel, kan een interne subquery in de FROM-sectie bijzonder handig zijn.
Veeg om te beginnen met coderen
Je taak is om het gemiddelde budget (budget kolom) op te halen voor alle managementafdelingen uit de department tabel. Gebruik een interne subquery in het FROM-gedeelte om alleen het managementtype afdeling te filteren. Gebruik ook het alias manager_departments voor deze tabel zodat de opdracht correct wordt gecontroleerd.
De output moet slechts één kolom bevatten, average_budget. Dit is een alias voor de aggregatiefunctie AVG().
Deze opdracht kan ook worden uitgevoerd met een WHERE-clausule, maar we gebruiken hier een geneste query om deze syntaxis te oefenen, wat nuttig zal zijn bij het oplossen van complexere problemen in de toekomst.
Korte instructies
- Haal de gemiddelde waarde van de
budgetkolom op. - Wijs het alias
average_budgettoe aan die kolom. - In de
FROM-clausule moet je een geneste query schrijven. - Selecteer in de geneste query alle kolommen uit de
departmenttabel. - Gebruik in de geneste query de
WHERE-clausule met de voorwaardetype = 'manager'. - Wijs het alias
manager_departmentstoe aan de geneste query.
Oplossing
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.