I'm creating an application that helps keep track of weight / time entries in the gym! I’ve created an overview screen, which should contain a list of machines which are filtered by an array of persons UUID’s and a day number. I was able to construct this query using an INNER JOIN and IN operator.
The problem is that I also want to fetch the latest entry for every person / machine combo, below I’ve included a simplified dataset for explanation:
Person table
| uuid | name | 
|---|---|
| 12297EBD96B54C6C95935C2001634B77 | Wouter de Bruijn | 
| 59F2EA7AA33E4EFE9F2484E7B37C46C1 | Sjors van Holst | 
Schedule table
| uuid | machine | person | day | 
|---|---|---|---|
| 1D02BF7E755F48968B9701C5D287DE7A | 70104A0A5DD04C2AB7F84D7F8051A8BA | 12297EBD96B54C6C95935C2001634B77 | 2 | 
| 3044B63EFFD24572863014984BBF299F | 70104A0A5DD04C2AB7F84D7F8051A8BA | 59F2EA7AA33E4EFE9F2484E7B37C46C1 | 2 | 
Entry table
| uuid | machine | person | weight | created | 
|---|---|---|---|---|
| 324604B034844B9D8ED4BED03F5193E9 | 70104A0A5DD04C2AB7F84D7F8051A8BA | 12297EBD96B54C6C95935C2001634B77 | 50 | 2022-04-08 12:00:00 | 
| 336B370D2CBE43A1B4ED420143A22C32 | 70104A0A5DD04C2AB7F84D7F8051A8BA | 12297EBD96B54C6C95935C2001634B77 | 5 | 2022-04-07 12:00:00 | 
Machine
| machine | name | 
|---|---|
| 70104A0A5DD04C2AB7F84D7F8051A8BA | Bench press | 
I'm trying to construct a query that would take in a list of UUID's (let's say 12297EBD96B54C6C95935C2001634B77 and 59F2EA7AA33E4EFE9F2484E7B37C46C1) and a day (let's say 2) and then return something along the lines of:
Results
| machine | person | weight | 
|---|---|---|
| 70104A0A5DD04C2AB7F84D7F8051A8BA | 12297EBD96B54C6C95935C2001634B77 | null | 
| 70104A0A5DD04C2AB7F84D7F8051A8BA | 59F2EA7AA33E4EFE9F2484E7B37C46C1 | 50 | 
But I can't figure out how to construct a query for this, and would appreciate any help with this! Below I’ve also included my ERD in case it might come in handy, but a query using my sample dataset would also be fine. I’m pretty sure I could change the query to match the actual database.
I would include what I’ve attempted so far but I don’t think this would help anyone out. I'm not new to MySQL or anything but I’ve never had to write such a complex query. So I was hoping for some help :)

