supondo que sua tabela seja chamada de cats, tente isto:
select * from cats
order by
case when parentid = 0 then id else parentid end,
case when parentid = 0 then 0 else id end
Atualizado para incluir quando o pai teria um ID mais alto em comparação com os filhos