Необходимо преобразовать оператор SQL с количеством столбцов в SQL Alchemy. - PullRequest
0 голосов
/ 19 сентября 2019

Я сделал следующий запрос

select
    id,
    name, 
    (select count(*) from users where company_id=companies.id) as num_candidates, 
    (select count(*) from users where company_id=companies.id and status=1) as num_evaluating ,
    (select count(*) from users where company_id=companies.id and created_at between '9/12/2019' and '9/19/2019') as num_last_week 
    from companies order by num_candidates DESC limit 10;

В частности, у меня проблема с нестандартными столбцами, которые учитываются.В настоящее время у меня примерно как тест (на основе объединения нескольких примеров)

num_candidates = db.session.query(models.User.id).filter(models.User.company_id == models.Company.id).count().label("num_candidates")

query = db.session.query(models.Company.id, 
                     models.Company.name,
                     num_candidates).order_by("num_candidates").all()

Но это, конечно, дает мне ошибки.Есть идеи, как правильно построить SQL Alchemy?

...