Значений поля RPayFundMember.PayCostType для одного значения RPayFundMember.CounterUnit не должно быть очень уж много. Вряд ли больше 20..30 значений. Значит, вместо подзапросов можно просто сделать перечисление
Сейчас их всего 70. Но это далеко не предел.
И механизм групп расчитан на произвольную настройку.