Мне нужно реализовать функциональность, которая соответствует функциональности GEQO в PostgreSQL. Я понимаю, что подход GEQO заключается в кодировании планов запросов в виде целочисленных строк, и GEQO генерирует эти возможные последовательности соединения случайным образом. Источник: http://www.postgresql.org/docs/9.3/static/geqo-pg-intro.html
Мой вопрос: как изменить функцию GEQO, если я точно знаю правильную последовательность соединений, чтобы мне не приходилось искать разные последовательности соединений. Например, если бы я знал, что лучший способ соединения 4 отношений - это 4-1-3-2, мне не нужно проверять другие перестановки.
Нет хороших материалов о том, как GEQO реализован в PostgreSQL. PostgreSQL только дает общее представление о функциональности GEQO, но мало что объясняет.
Или я мог бы достичь этой функциональности в самой standard_join_search () без использования GEQO?