Один из способов сделать это с помощью NOT EXISTS
:
select
t.funcionario_id, t.folga, t.id
from tablename t
where not exists (
select 1 from tablename
where funcionario_id = t.funcionario_id and folga > t.folga
)
или сначала вы можете group by funcionario_id
, чтобы получить максимальную дату (я думаю, это запрос, который вернул опубликованный вами результат) изатем присоединитесь к столу:
select t.*
from tablename t inner join (
select funcionario_id, max(folga) folga
from tablename
group by funcionario_id
) g on g.funcionario_id = t.funcionario_id and g.folga = t.folga