I Have 2 Tables which are
Papers
|ID | Paper_Code | Subject_Code |
| 0 | 2018/Eng/01|     ENG      |
| 1 | 2018/Eng/02|     ENG      |
| 2 | 2018/CS/01 |     CS       |
| 3 | 2018/Sci/01|     Sci      |
| 4 | 2018/Eng/03|     ENG      |
Subjects
|Subject_Code|Subject_Name|
|ENG         |English     |
|Sci         |Science     |
|CS          |Computers   |
I Achieved the following table which only shows the Max Paper_Code per Distinct Subject_Code by using this SQL CODE, which is what i wanted.
$sql = "SELECT Paper_Code FROM papers
       WHERE(Subject_Code,Paper_Code)
       IN(SELECT Subject_Code,MAX(Paper_Code)
       FROM Papers GROUP BY Subject_Code)
        ";
|ID | Paper_Code | Subject_Code |
| 4 | 2018/Eng/03|     ENG      |
| 2 | 2018/CS/01 |     CS       |
| 3 | 2018/Sci/01|     Sci      |
Now I want to INNER JOIN The Subjects Table to give me results like this
|ID | Paper_Code | Subject_Code | Subject_Name |
| 4 | 2018/Eng/03|     ENG      | English      |
| 2 | 2018/CS/01 |     CS       | Computers    |
| 3 | 2018/Sci/01|     Sci      | Science      |
I have tried this but failed
$sql = "SELECT Paper_Code FROM Papers
       WHERE(Subject_Code,Paper_Code)
       IN(SELECT Subject_Code,MAX(Paper_Code)
       FROM Papers GROUP BY Subject_Code)
       INNER JOIN Subjects
       ON Papers.Subject_Code = Subjects.Subject_Code";
 
     
    