Насколько я понимаю, толк от секционирования будет только в том случае, если упомянутые принцип разбиения и критерий выборки совпадают.
Абсолютно правильное понимание.
Одним из решений таких задач является введение избыточности: для ускорения выборки вы дублируете информацию в несколько таблиц и секционируете таблицу под конкретный запрос.
Либо вы проводите какую-то дополнительную агрегацию или уменьшение данных и храните в отдельной таблице. Опять же под запрос.
Либо вы делаете функцию партиционирования по нескольким полям, но это надо смотреть запросы. Будет работать только если фильтры запросов являются подмножествами друг друга