Je ne suis pas sûr de comprendre parfaitement votre intention, mais peut-être que ce qui suit serait proche de ce que vous voulez :
select n1.name, n1.author_id, count_1, total_count
from (select id, name, author_id, count(1) as count_1
from names
group by id, name, author_id) n1
inner join (select id, author_id, count(1) as total_count
from names
group by id, author_id) n2
on (n2.id = n1.id and n2.author_id = n1.author_id)
Malheureusement, cela ajoute l'exigence de regrouper la première sous-requête par id ainsi que par name et author_id, ce qui, je ne pense pas, était voulu. Je ne sais pas comment contourner cela, car vous devez disposer d'un identifiant disponible pour participer à la deuxième sous-requête. Peut-être que quelqu'un d'autre trouvera une meilleure solution.
Partagez et profitez.