Есть запросы где делаются запросы на подобии:
SELECT count(distinct(product.id))
FROM `product`
JOIN `product_to_category` `p2c` ON product.id = p2c.product_id
JOIN `city` `c` ON c.id = product.city_id
LEFT JOIN `city` `city` ON city.id=product.city_id
LEFT JOIN `company` ON company.id=product.company_id
WHERE ((`product`.`publish` = 1)) AND (c.id = 108 or c.parent_id = 108) AND ((`p2c`.`category_id` IN (917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950)));
я как понимаю в основном тут вот эта часть долго выполняется при нагрузке
((`p2c`.`category_id` IN (917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950))
как можно оптимизировать?