Você terá que fazer uma varredura completa da tabela, então esta é provavelmente a melhor solução:
select (case when id in (< your list >) then 'in' else 'out' end) as inlist,
my_boolean_field, count(*)
from mytable t
group by (case when id in (< your list >) then 'in' else out' end),
my_boolean_field;
Se sua lista estiver em uma tabela com um índice, você poderá usar um
left join
nele. No entanto, o MySQL otimiza as pesquisas para in
com valores constantes (usa uma busca binária). Portanto, este é provavelmente o método mais rápido.