En första tanken är kanske subquery, eftersom vi pratat om det. Och upplägget liknar till viss del en subquery.
Man tänker kanske att man kan ta de tre äldsta lärararna från tabellen larare och använda deras akronym för att plocka ut de kurser de är ansvariga på.
Men problemet blir ju att dessa tre lärare, inde nödvändigtvis undervisar. Så enda sättet att plocka ut de
tre lärare som undervisar (trippeljoin alt v_planering)
och är äldst (ålder via tabell larare alt v_larare) är att joina och sen where.
Tittar man riktigt noggrant i uppgiften så ser man att Albus är äldst, men han har ingen undervisning så han är inte aktuell. Det var bara de tre äldsta lärarna som undervisar, som man vill ha fram.
Det må vara okey att hårdkoda where-satsen (ange ålder > X som skall visas), eller lägga till en limit, för att hantera så att enbart de tre äldsta undervisande lärarna visas i rapporten. Den blir svår att lösa mer dynamiskt så den släpper vi.
Sen är det också bra att minnas att subquery kan skrivas om till joins, inte för att det specifikt berör uppgiften, men det kan vara bra att ha i tanken när man väljer strategi för sin lösning. För mer info:
Rewriting Subqueries as Joins