I have to write a query that allows to get the milestone of each project whose date is the shortest. My dataset looks like this :
Project table
+----+-------+-----------+
| ID | NAME | OTHERS |
+----+-------+-----------+
| 1 | A | W |
| 2 | B | X |
| 3 | C | Y |
| 4 | D | Z |
|... | ... | ... |
+----+-------+-----------+
Milestone table
+----+-------+-----------+
| ID | NAME | PROJECTID |
+----+-------+-----------+
| 11 | A1 | 1 |
| 21 | B1 | 1 |
| 31 | C1 | 2 |
| 41 | D1 | 3 |
| 51 | E1 | 3 |
+----+-------+-----------+
AND Tasks table
+----+-------+-----------+-------------+
| ID | MILEID| PROJECTID | DATE |
+----+-------+-----------+-------------+
|111 | 11 | 1 | 18/02/2022 |
|121 | 11 | 1 | 20/03/2022 |
|131 | 21 | 1 | 20/06/2022 |
|141 | 21 | 1 | 01/03/2022 |
|211 | 31 | 2 | 15/06/2021 |
|311 | 41 | 3 | 10/05/2021 |
|312 | 41 | 3 | 30/07/2022 |
|321 | 51 | 3 | 05/01/2022 |
|322 | 51 | 3 | 11/04/2022 |
+----+-------+-----------+-------------+
Expected result is :
+-----+-------+
| PID | MID |
+-----+-------+
| 1 | 11 | (because 18/02/2022 is the min date all over tasks)
| 2 | 31 |
| 3 | 41 | (because 10/05/2021 is the min date all over tasks)
+-----+-------+
As you can see there are multiples tasks per milestone and there are multiples milestones per project. All over my tests, my query return all milestones per project not the one I need. I have to say I m' working with Zoho project Analytics so it only support standard query (not CTE or else) and only support 2 levels of query. Thanks a lot for your help.