Query to get the users who have a application approved
You can join the same table twice, once to check that there exists some submission (preferably a rejected one) and second time you left join the same to get any approved submission - then you can check if the left join found something (and remove those - where approved_table.id is null) - to get only one row per user you can do a group by Users.ID.

select users.* from users
inner join Submissions exist_grant
    on users.ID = exist_grant.userID
left join Submissions approved_grant
    on (approved_grant.status="Approved" and users.ID = approved_grant.userID)
where approved_grant.userID is null
group by users.ID