Еще, если речь об интернет-магазине, можно кешировать число товаров в каждой категории, или кроном раз в 5 минут пересчитывать и сохранять (через запрос SELECT COUNT(*) GROUP BY category_id), но мне подход L0NGMAN нравится больше.
> Была попытка реализовать на mysql-триггерах обновление счетчика каждой категории при изменении/добавлении/удалении товара, но при загрузке большого количества товара такая система работает крайне не стабильно, точнее долго.
Знаичт, у вас плохой код, надо его оптимизирвать, возможно, сделать то же самое без триггеров.