Для тех, кто ищет похожие ответы, у меня есть некоторый практический опыт решения такой же проблемы.
Хотя это работает довольно хорошо, проблема с ...
ORDER BY levenshtein ( M.title, "Foobar" )
... дело не в том, что он выполняет функцию дважды (из тестирования таблицы с 500 000 строк, я не верю в это), а в том, что запрос использует сортировку файлов для выполнения ORDER BY. Как вы, возможно, знаете, включение столбцов ORDERed в предложение WHERE устраняет необходимость в сортировке файлов. Проблема в том, что значения ORDERed не являются столбцами и не работают так, как это делают чистые ссылки на столбцы.