SQLAlchemy вывод всех значений

Созданы следующие модели и их join для выборки данных.

class Bl_as(Base):
    """Data model example."""
    __tablename__ = "Table1"
    __table_args__ = {"schema": "schema1"}
    filet = Column(Integer, primary_key=True, unique=False, nullable=False)
    filet5 = Column(Integer, unique=False, nullable=False)
    filet6 = Column(Integer, unique=False, nullable=False)
    filet7 = Column(Integer, unique=False, nullable=False)

    def __repr__(self):
        return '<Example model {}>'.format(self.filet)
 
class Sala(Base):
    """Data model example."""
    __tablename__ = "Table2"
    __table_args__ = {"schema": "schema2"}
    code1 = Column(Integer, primary_key=True, unique=False ,nullable=False)
    code2 = Column(String(3), nullable=False)
    code3 = Column(String(3000), nullable=False)
    code4 = Column(String(60), nullable=False)
    code5 = Column(Text, nullable=False)
    code6 = Column(Text, nullable=False)
    code7 = Column(Text, nullable=False)
  
    def __repr__(self):
        return '<Example model {}>'.format(self.code1)
 
class Stas(Base):
    """Data model example."""
    __tablename__ = "table4"
    __table_args__ = {"schema": "schema1"}
    filet = Column(Integer, primary_key=True, unique=False, nullable=False)
    filet2 = Column(Integer, unique=False, nullable=False)
    filet3 = Column(Integer, unique=False, nullable=False)
    filet4 = Column(Integer, unique=False, nullable=False)
    deleteed = Column(DateTime, unique=False, nullable=False)
 
    # team = relationship("Acas")

    def __repr__(self):
        return '<Example model {}>'.format(self.filet)

class Acas(Base):
    """Data model example."""
    __tablename__ = "table3"
    __table_args__ = {"schema": "schema1"}
    filet = Column(Integer, primary_key=True, unique=False, nullable=False)
    filet2 = Column(Integer, unique=False, nullable=False)
    filet3 = Column(Integer, unique=False, nullable=False)
    date_from = Column(DateTime, unique=False, nullable=False)
    date_to = Column(DateTime, unique=False, nullable=False)
 
    def __repr__(self):
        return '<Example model {}>'.format(self.filet)
 
    
def get():
    sub_quer = (db_session.query(
        Bl_as.filet,
        Bl_as.filet5,
        func.max(Bl_as.filet6.cast(Integer)).label("min_a"),
        func.max(Bl_as.filet7.cast(Integer)).label("min_b=")
        ).
        group_by(Bl_as.filet, Bl_as.filet5)).subquery()


    records = db_session.query(Acas, Stas, sub_quer, Sala)\
        .join(Stas, Acas.filet==Stas.filet, isouter=True)\
        .join(sub_quer, Acas.filet==sub_quer.c.filet, isouter=True)\
        .join(Sala, Stas.filet4==Sala.code1, isouter=True)\
        .filter(Acas.filet2 == Stas.filet2)\
        .filter(Acas.filet3 == Stas.filet3) \
        .filter(func.current_date().between(Acas.date_from, Acas.date_to)) \
        .filter(Stas.deleteed is not None)\
        .filter(Stas.filet4 > 0)\
        .filter(sub_quer.c.min_a == 1)\
        .filter(sub_quer.c.min_b not in (3, 4))\
        .filter(Stas.filet4 == 445).all()
  
    print(records)

При выводе records я получаю вот такой вот результат.

[(<Example model 445>, <Example model 3113>, Decimal('55533'), Decimal('11'), Decimal('1'), Decimal('2'), <Example model 55322>)]

Однако, при вызове sql запроса должно быть 3 кортежа, а возвращается 1. Подскажите, как вывести все ? Пример желаемого результата

[(<Example model 445>, <Example model 3113>, Decimal('55533'), Decimal('11'), Decimal('1'), Decimal('2'), <Example model 55322>), (<Example model 445>, <Example model 3113>, Decimal('55533'), Decimal('11'), Decimal('1'), Decimal('2'), <Example model 11111>), (<Example model 445>, <Example model 3113>, Decimal('55533'), Decimal('11'), Decimal('1'), Decimal('2'), <Example model 22222>)]


Ответы (0 шт):