Vous devrez effectuer une analyse complète de la table, c'est donc probablement la meilleure solution :
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;
Si votre liste est dans une table avec un index, vous pouvez utiliser une left join
dessus. Cependant, MySQL optimise les recherches de in
avec des valeurs constantes (il utilise une recherche binaire). Il s'agit donc probablement de la méthode la plus rapide.