Hier ist eine Postgres-Abfrage, die Ich mag würde übersetzen ORM sqlalchemy:SQLAlchemy: Brauchen Sie Hilfe diese komplexe rohe Abfrage ORM zu übersetzen (Subqueries, Fensterfunktionen)
SELECT
*
FROM
(
SELECT
*,
date_trunc(
'hour',
time_obs + INTERVAL '15' MINUTE
) AS usedTimestamp,
ROW_NUMBER() OVER(
PARTITION BY icao,
date_trunc(
'hour',
time_obs + INTERVAL '15' MINUTE
)
ORDER BY
LEAST(
EXTRACT(
MINUTE
FROM
time_obs
),
60 - EXTRACT(
MINUTE
FROM
time_obs
)
)
) AS seqnum
FROM
metar_current
WHERE
icao = 'DGAA'
) AS dt
WHERE
seqnum = 1
AND LEAST(
` EXTRACT(
MINUTE
FROM
time_obs
),
60 - EXTRACT(
MINUTE
FROM
time_obs
)
) <= 15
ORDER BY
time_obs ASC
Wenn es nicht möglich ist (oder zu schwierig), dies in sqlalchemy ORM zu übersetzen, gibt es dann eine Möglichkeit, dass ich das als rohe SQL abfragen könnte, aber referenziere die resultierenden Daten mit Spaltennamen?
Zum "könnte [ich] dies als rohe sql abfragen": ['Query.from_statement()'] (http://docs.sqlalchemy.org/en/latest/orm/query.html#sqlalchemy.orm .query.Query.from_statement) ermöglicht es Ihnen, Abfragen für SQL-Anweisungen auszuführen, die ORM-Entitäten zurückgeben. –