Мислили ли сте за таблица за календари ? Въпреки че сайтът е много стар, той все още много добре описва използването на такава таблица:
Така че във вашия случай бихте създали такава таблица и след това просто ще я присъедините към вашата Company
модел.
Водещи до заявка като:
CalendarDay.where(year: Date.current.year).joins(:companies).group('YEAR(companies.created_at)').count