Вы можете использовать условное выражение:
select
case when name = 'AAA' then name else 'OTHERS' end new_name,
count(*) cnt
from mytable
group by case when name = 'AAA' then name else 'OTHERS' end
Некоторые базы данных (а именно, MySQL и MariaDB) поддерживают повторное использование псевдонимов столбцов, определенных в предложении select
в предложении group by
, поэтому вы можно упростить предложение group by
как:
group by new_name
Другие базы данных поддерживают позиционные параметры (Postgres и Oracle - два примера):
group by 1