ho una tabella

nome | tipo | datains
qui | gatto | 2009-05-01
quo | gatto | 2009-04-01
qua | gatto | 2009-03-01
pluto | cane | 2009-04-01
pippo | cane | 2009-03-01

se voglio ottenere
il cane e il gatto inserito per ultimo

quindi
qui | gatto | 2009-05-01
pluto | cane | 2009-04-01

con

select *
from animali
group by tipo
order by datains

non funziona, perchè l'order by viene applicato solo dopo il group by
come si fa?