Se seu objetivo é realmente contar as linhas, use
COUNT(*) . num_rows é normalmente (na minha experiência) usado apenas para confirmar que mais de zero linhas foram retornadas e continuam nesse caso. Provavelmente levará mais tempo para o MySQL ler muitas linhas selecionadas em comparação com a agregação em COUNT também, mesmo que a própria consulta leve o mesmo tempo.