Сортировка по столбцу в объединенном запросе в SqlAlchemy SQLite

Как объясняется в этом вопросе , вы можете использовать строковые литералы для order by в union s.

Например, это работает с Oracle:

 querypart1 = select([t1.c.col1.label("a")]).order_by(t1.c.col1).limit(limit) querypart2 = select([t2.c.col2.label("a")]).order_by(t2.c.col2).limit(limit) query = querypart1.union_all(querypart2).order_by("a").limit(limit) 

Порядковый порядок может принимать строковый литерал, который является именем столбца в результате объединения.

(В секционированных таблицах есть gazillions строк, и я пытаюсь разбивать проклятые вещи)

Однако при работе с SQLite3 это генерирует исключение:

 sqlalchemy.exc.OperationalError: (OperationalError) near "ORDER": syntax error 

Как вы можете order by результатам union ?

    One Solution collect form web for “Сортировка по столбцу в объединенном запросе в SqlAlchemy SQLite”

    Запросы, которые являются частью запроса объединения, не должны сортироваться.

    Чтобы иметь возможность использовать лимиты внутри сложного запроса, вы должны обернуть отдельные запросы в отдельный подзапрос:

     SELECT * FROM (SELECT ... LIMIT ...) UNION ALL SELECT * FROM (SELECT ... LIMIT ...) 
     q1 = select(...).limit(...).subquery() q2 = select(...).limit(...).subquery() query = q1.union_all(q2)... 
      Interesting Posts

      Использование инструкции Python для инструкции SQL INSERT

      Python: наружный цикл «break»

      Распечатайте строку unicode для консоли OK, но не удается перенаправить файл. Как исправить?

      Python OpenCv, только чтение части изображения

      Ошибка веб-процессов Ошибка – развертывание Django на Heroku

      Автоматический (виски-чувствительный) ylim в ящиках

      Как использовать win32com.client.constants с MS Word?

      Python Script: печатать новую строку каждый раз для оболочки, а не для обновления существующей строки

      Как получить токен доступа Facebook, используя библиотеку Python?

      Удалить символ при определенном индексе – python

      разница между командной строкой и подсказкой anaconda

      Найти строки с подмножеством значений в другой DataFrame в векторном виде

      Пропустить системные проверки на сервере Django в режиме DEBUG в Pycharm

      Tkinter: масштабирование элементов на холсте

      Почему pandas xs не падает, даже если drop_level = True

      Python - лучший язык программирования в мире.