Я пытаюсь отсортировать объект SQLAlchemy ORM по полю, но с определенным порядком значений (который не является ни восходящим, ни убывающим). Если бы я делал этот запрос на MySQL, он бы выглядел так:
SELECT letter FROM alphabet_table WHERE letter in ('g','a','c','k')
ORDER BY FIELDS( letter, 'g','a','c','k');
для вывода:
letter
------
g
a
c
k
Для SQLAlchemy я пробовал что-то вроде:
session.query (AlphabetTable) .filter (AlphabetTable.letter.in _ (( 'г', 'а', 'с', 'к'))). Order_by (AlphabetTable.letter.in _ (( 'г' , 'а', 'с', 'к')))
Что не работает ... какие-либо идеи? Это небольшой одноразовый постоянный список, и я мог бы просто создать таблицу с порядком и затем присоединиться, но это кажется слишком много.