Как я могу преобразовать sql в sqlachemy?
Мой SQL
SELECT ev,
min(event_time) AS first_event,
max(event_time) AS last_event,
min(arrival_time) AS first_arrival,
max(arrival_time) AS last_arrival,
count(DISTINCT(device_id)) AS device_id_count,
(select category_value from A where category = 1 and A.ev = AAA.ev) as category_value
FROM A as AAA
where AAA.id <= 2 GROUP BY ev
Как я знаю, в sqlachemy была функция subquery()
, но я не понимаю, как конвертировать (select category_value from A where category = 1 and A.ev = AAA.ev)
в код sqlachemy
Моя попытка использовать SQL-алхимию (отформатирована для удобства чтения)
session.query(
A.env,
func.min(A.event_time),
func.max(A.event_time),
func.min(A.arrival_time),
func.max(A.arrival_time),
func.count(A.device_id.distinct())).filter(A.id >=2 ).group_by(A.env)