Verwendung von Inneren Unterabfragen im FROM-Abschnitt
Eine innere Unterabfrage erstellt eine Tabelle, mit der wir anschließend Operationen in der äußeren Abfrage durchführen.
Daraus lässt sich schließen, dass wir auch eine innere Abfrage im FROM-Abschnitt verwenden können, um etwas aus dieser Tabelle auszuwählen.
Betrachten wir ein Beispiel, bei dem wir mit employees arbeiten müssen, deren salary über einem bestimmten Wert liegt. Anstelle einer WHERE-Klausel verwenden wir jedoch eine innere Abfrage:
123456SELECT * FROM ( SELECT * From employees WHERE salary >= 70000 ) AS high_salary_employees
Wir haben eine neue Tabelle mit einer inneren Unterabfrage erstellt, mit der wir arbeiten und Informationen sammeln können.
Hinweis
Beachten Sie, dass es bei einer solchen Tabelle unerlässlich ist, einen Alias anzugeben.
Wann ist dies nützlich?
Eine solche Abfrage ist sehr gut lesbar; manchmal kann sie eine WHERE-Klausel ersetzen.
Außerdem ist eine innere Unterabfrage im FROM-Abschnitt äußerst praktisch, wenn nicht mit der gesamten Tabelle, sondern nur mit einem gefilterten Teil gearbeitet werden soll.
Swipe to start coding
Ihre Aufgabe ist es, das durchschnittliche Budget (Spalte budget) für alle Management-Abteilungen aus der Tabelle department abzurufen. Verwenden Sie dazu eine innere Unterabfrage im FROM-Abschnitt, um nur die Abteilungen vom Typ 'manager' zu filtern. Verwenden Sie außerdem den Alias manager_departments für diese Tabelle, damit die Aufgabe korrekt überprüft werden kann.
Die Antwort soll nur eine Spalte mit dem Namen average_budget enthalten. Dies ist ein Alias für die Aggregatfunktion AVG().
Hinweis
Diese Aufgabe könnte auch mit einer
WHERE-Klausel gelöst werden, aber wir verwenden hier eine verschachtelte Abfrage, um diese Syntax zu üben, was für die Lösung komplexerer Probleme in Zukunft nützlich sein wird.
Kurzanleitung
- Abrufen des Durchschnittswerts der Spalte
budget. - Weisen Sie dieser Spalte den Alias
average_budgetzu. - Im
FROM-Abschnitt muss eine verschachtelte Abfrage geschrieben werden. - In der verschachtelten Abfrage alle Spalten aus der Tabelle
departmentauswählen. - In der verschachtelten Abfrage die
WHERE-Klausel mit der Bedingungtype = 'manager'verwenden. - Weisen Sie der verschachtelten Abfrage den Alias
manager_departmentszu.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Can you give more examples of using inner subqueries in the FROM clause?
When should I use an inner subquery instead of a WHERE clause?
What are some common mistakes to avoid when using subqueries in the FROM clause?
Großartig!
Completion Rate verbessert auf 4
Verwendung von Inneren Unterabfragen im FROM-Abschnitt
Swipe um das Menü anzuzeigen
Eine innere Unterabfrage erstellt eine Tabelle, mit der wir anschließend Operationen in der äußeren Abfrage durchführen.
Daraus lässt sich schließen, dass wir auch eine innere Abfrage im FROM-Abschnitt verwenden können, um etwas aus dieser Tabelle auszuwählen.
Betrachten wir ein Beispiel, bei dem wir mit employees arbeiten müssen, deren salary über einem bestimmten Wert liegt. Anstelle einer WHERE-Klausel verwenden wir jedoch eine innere Abfrage:
123456SELECT * FROM ( SELECT * From employees WHERE salary >= 70000 ) AS high_salary_employees
Wir haben eine neue Tabelle mit einer inneren Unterabfrage erstellt, mit der wir arbeiten und Informationen sammeln können.
Hinweis
Beachten Sie, dass es bei einer solchen Tabelle unerlässlich ist, einen Alias anzugeben.
Wann ist dies nützlich?
Eine solche Abfrage ist sehr gut lesbar; manchmal kann sie eine WHERE-Klausel ersetzen.
Außerdem ist eine innere Unterabfrage im FROM-Abschnitt äußerst praktisch, wenn nicht mit der gesamten Tabelle, sondern nur mit einem gefilterten Teil gearbeitet werden soll.
Swipe to start coding
Ihre Aufgabe ist es, das durchschnittliche Budget (Spalte budget) für alle Management-Abteilungen aus der Tabelle department abzurufen. Verwenden Sie dazu eine innere Unterabfrage im FROM-Abschnitt, um nur die Abteilungen vom Typ 'manager' zu filtern. Verwenden Sie außerdem den Alias manager_departments für diese Tabelle, damit die Aufgabe korrekt überprüft werden kann.
Die Antwort soll nur eine Spalte mit dem Namen average_budget enthalten. Dies ist ein Alias für die Aggregatfunktion AVG().
Hinweis
Diese Aufgabe könnte auch mit einer
WHERE-Klausel gelöst werden, aber wir verwenden hier eine verschachtelte Abfrage, um diese Syntax zu üben, was für die Lösung komplexerer Probleme in Zukunft nützlich sein wird.
Kurzanleitung
- Abrufen des Durchschnittswerts der Spalte
budget. - Weisen Sie dieser Spalte den Alias
average_budgetzu. - Im
FROM-Abschnitt muss eine verschachtelte Abfrage geschrieben werden. - In der verschachtelten Abfrage alle Spalten aus der Tabelle
departmentauswählen. - In der verschachtelten Abfrage die
WHERE-Klausel mit der Bedingungtype = 'manager'verwenden. - Weisen Sie der verschachtelten Abfrage den Alias
manager_departmentszu.
Lösung
Danke für Ihr Feedback!
single