Can't you just do it like this..
SELECT SELECT DISTINCT
T1.id
,T1.RANK
,T1.fullname
,T2._time
,T2._date
,T1.casing
,T1.munit
FROM tblmain T1
LEFT OUTER JOIN tbl_secure_mornning T2 ON T1.id = T2.num
WHERE T1.ending ='false'
and T1.frsrank between 15 and 16
GROUP BY T1.munit