Я работаю в интернет-магазине и нуждаюсь в совете по поводу лучшего подхода к сбору данных, чтобы показать варианты фильтрации по цене, бесплатной доставке и другим вариантам, в которых участвует подсчет базы данных. Мой скрипт написан на PHP на mySQL.
Если вы посмотрите на категории продуктов Amazon (то есть http://www.amazon.com/gp/search/ref=sr_nr_scat_14219011_ln?rh=n%3A14219011%2Ck%3Awii&keywords=wii&ie=UTF8), то увидите, что рядом с параметрами фильтрации на левой боковой панели указано количество результатов в каждой категории. Например, в Nintendo 163 совпадения.
Я не думаю, что это хранится в таблице, поскольку существует так много переменных, которые вы постоянно обновляете базу данных, но также кажется нецелесообразным запускать запрос для каждой группы фильтрации с настройкой 5-6 запросов на загрузку страницы. ,
Было бы логичнее получить большой набор данных в кеше, использовать PHP для фильтрации результатов, а затем просто отобразить несколько результатов или запрос с тысячами элементов хуже, чем выполнение нескольких запросов на подсчет вторичных данных? Есть ли другое решение?