Utmaning: Söka Efter De Bästa Matematikstudenterna
Skolan är nöjd med vårt arbete och har gått med på att fortsätta samarbetet.
Nu har de gett oss en ny uppgift. De 10 bästa eleverna med högst medelbetyg kommer att erbjudas en resa till ett vetenskapligt centrum som belöning. Ett obligatoriskt villkor är att ha fått betyg över 90 på matteprovet. För att hitta dessa elever har de vänt sig till dig.
Låt oss se vad vi behöver göra med hjälp av vårt employee
-tabell som exempel.
Antag att vi behöver ta reda på vilka avdelningar som har anställda som anställdes före 2019 och genomsnittslönen i dessa avdelningar. För att genomföra en sådan uppgift kan vi använda följande fråga:
SELECT department, AVG(salary) AS average_salary FROM employees WHERE hire_date < '2019-01-01' GROUP BY department
Som du kan se finns det bara 3 sådana anställda, och vi använde de nödvändiga verktygen för att uppnå detta resultat.
Swipe to start coding
Hämta upp till 10 elever med högst genomsnittligt matematikbetyg bland alla elever som fått minst 90 på matematikprovet.
Sortera dessutom resultatet efter kolumnen average_grade
i fallande ordning.
Ge aliaset average_grade
till det genomsnittliga matematikbetyget för att säkerställa att uppgiften kontrolleras korrekt.
Kortfattade instruktioner
- Hämta kolumnen
student_surname
och genomsnittet av kolumnengrade
med funktionenAVG()
. - Tilldela aliaset
average_grade
till den andra kolumnen. - Använd ett villkor där
grade >= 90
ochsubject_name = 'Mathematics'
. - Gruppera resultaten efter
student_surname
. - Sortera resultaten efter
average_grade
i fallande ordning. - Använd
LIMIT
-satsen för att endast returnera 10 resultat.
Lösning
Tack för dina kommentarer!