Но, я видимо нарушаю заповедь, что лучшее враг хорошего и на самом деле надо делать это несколькими запросами.Один запрос - это не всегда лучшее. Например, решение, которое предложил Лентяй технически правильное, но СУБД не сможет его толком закешировать и оптимизировать. Два простых запроса в данном случае будут лучшим решением.
Странно, что вы вообще не использовали git в своей курсовой. Приучайте себя использовать git в разработке, делать правильные атомарные, грамотно комментированные коммиты и пушить локальные изменения почаще.В этом и проблема современного образования у нас - прививанием реально необходимых в жизни навыков не занимаются.