Не знаю насколько адекватный вариант, но что если в принципе отвязаться от подсчёта из бд, а привязаться к созданиям и удалениям самих данный, типо если запись успешно добавлена то мы в отдельной табличке, созданной специально для хранения количества записей делаем инкремент числа, а если удаляем то декремент