select a.student_name,b.subject_name,c.student_score from studentmain a, subjectname b, studentscore c, testschedule d
where a.student_id = b.student_id and b.subject_id = c.subject_id order by d.test_date;
select g.student_name, h.subject_name,ifnull(f.student_score,0) score from
(select a.student_id, b.subject_id from studentmain a , subjectmain b)e left outer join (
select c.student_id, c.student_score, d.subject_id from studentscore c inner join (
select max(test_Id) testID,subject_Id from testschedule group by subject_Id) d
on c.test_id=d.testId)f on e.student_id=f.student_id and e.subject_id=f.subject_id
inner join studentmain g on e.student_id=g.student_id
inner join subjectmain h on e.student_id=h.subject_id;