Questo dovrebbe fare quello che vuoi.
select animal, max(check_date) as max_date, count(*) as count
from mammals
group by animal
order by count(*) desc
LIMIT 10;
Questo è il mio output dalla query di cui sopra in base ai tuoi dati di esempio.
Monkey | 2017-05-09 13:29:39.000 | 5
Giraffe | 2017-05-09 09:25:07.000 | 4
Gazelle | 2017-05-09 14:52:57.000 | 3
Lion | 2017-05-09 09:28:35.000 | 2