PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Junte-se a um CTE no SQLAlchemy


O segundo argumento para Query.join() deve neste caso ser o ON completo cláusula, mas em vez disso você passa 3 argumentos para join() . Use and_() para combinar os predicados, como é feito no SQL bruto:
already_in_db_query = db.session.query(MyModel)\
    .join(cte,
          and_(cte.c.field1 == MyModel.field1,
               cte.c.field2 == MyModel.field2),
    ).all()