Dovrai eseguire una scansione completa della tabella, quindi questa è probabilmente la soluzione migliore:
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 la tua lista è in una tabella con un indice, puoi usare un left join
su di essa. Tuttavia, MySQL ottimizza le ricerche per in
con valori costanti (usa una ricerca binaria). Quindi è probabile che questo sia il metodo più veloce.