You need to first group the data regd with subject wise. So that you can able to calculate the percentage against each subject and remove those who are less than defined limit. Once you achive this, you can carry this output and use to show and create Rank. You can use something like below query.
select regd, SUM(IF(Subject = 'English' , Mark_score, 0)) English,
SUM(IF(Subject = 'MIL' , Mark_score, 0)) MIL,
SUM(IF(Subject = 'Mathematics', Mark_score, 0)) Mathematics,
SUM(IF(Subject = 'SS' , Mark_score, 0)) SS,
SUM(IF(Subject = 'Science' , Mark_score, 0)) Science,
Mark_score, Perc
from (
SELECT regd, Subject,(SUM(Mark_score) / SUM(Full_mark) * 100) Perc , (SUM(Mark_score)) Mark_score
FROM exam e1
GROUP BY regd, Subject
having perc > 35
) as t
order by Mark_score;