Review Requests
Time for one more project! This checkpoint puts the joins and the subqueries of the last two lessons to work, together with everything you learned before them. As in the previous checkpoints, the exercises say what the result should be, how you write the query is up to you, and each exercise also runs your query on other data.
The project. Pixel Shop's customer care team looks after the shop's customers: it asks them for reviews, writes to them when they haven't been back for a while, and answers when they call. Over three exercises, you'll write the queries the team needs for that. As before, the editor starts with the queries of the previous step, and you add the new one below them.
The task. After a purchase, the team asks the customer to review the game, and now it's time for the emails about the orders from November and December 2025. For each game in a paid order placed on November 1, 2025 or later, the team needs the customer's name and email and the title of the game, but only if the customer hasn't reviewed that game yet: nobody should be asked twice. Sort the rows by name and then by title:
| name | title | |
|---|---|---|
| Noah Wilson | noah.wilson@mail.com | Bakery Story |
| Noah Wilson | noah.wilson@mail.com | Moon Farm |
| Olivia Brown | olivia@brownfamily.net | Knight's Oath |
| Sophie Adams | sophie.adams@mail.com | Shadow Ninja |
| Sophie Adams | sophie.adams@mail.com | Zombie Town |
Emma Clark and Isla Young also bought Knight's Oath in November, but they've both reviewed it already. Moon Farm and Knight's Oath have reviews from other customers too, but not from Noah Wilson and Olivia Brown, so they still get the email.
A tip: a review belongs to a game and to a customer, so whether it exists depends on both.
Instructions
Below the comment -- 1. Review requests, write the query for the emails.
Start programming for free
1/3