У меня проблема с запросом по ORM SQLAlchemy.
Мне нужно написать подзапрос , как это
SELECT DISTINCT ON (e.type) e.type AS e_type, e.num AS e_num
FROM e ORDER BY e.type
по ORM SQLAlchemy, но когда я использовала .subquery().alias("q")
в моем запросе, DISTINCT ON
была скомпилирована в DISTINCT
. Почему и как мне это исправить?
Без .subquery () :
db.session.query(E.type, E.num).distinct(E.type).order_by(E.type)
скомпилировать в
SELECT DISTINCT ON (e.type) e.type AS e_type, e.num AS e_num FROM e ORDER BY e.type
С .subquery () :
db.session.query(E.type, E.num).distinct(E.type).order_by(E.type).subquery().alias("q")
скомпилировать в
SELECT DISTINCT e.type AS e_type, e.num AS e_num FROM e ORDER BY e.type