Я новичок с базами данных и sqlalchemy, и я пытаюсь сделать запрос, используя условие неравенства, но он всегда возвращает родителя, пока один из детей удовлетворяет условию, и мне нужно, чтобы все дети удовлетворяли этому неравенству
Мои текущие таблицы:
class Jefe(Base):
""" Tabla de jefes"""
__tablename__ = 'jefe'
id = Column(Integer, primary_key=True)
nombre = Column(String, unique=True)
empleado = relationship('Empleado', backref='jefe', cascade='all, delete-orphan')
class Empleado(Base):
""" Tabla de empleados"""
__tablename__ = 'empleado'
id = Column(Integer, primary_key=True)
jefe_id = Column(Integer, ForeignKey('jefe.id'), nullable=False)
nombre = Column(String, unique=True)
salario = Column(Float)
мой фактический запрос:
result = Session.query(Jefe).join(Empleado).filter(Empleado.salario > 120).all()
какой вывод:
Jefe: Yehender carrasco --- id: 1
----------- Empleados
----------- nombre: Jesus ramirez --- salario: 150.00 --- id: 1
----------- nombre: Erlinda pereira --- salario: 130.00 --- id: 2
Jefe: Kleiver carrasco --- id: 2
----------- Empleados
----------- nombre: Jesus carvajal --- salario: 155.00 --- id: 3
----------- nombre: Victor araujo --- salario: 135.00 --- id: 4
----------- nombre: Cristhiam ochoa --- salario: 105.00 --- id: 9
Jefe: Ivan marquez --- id: 4
----------- Empleados
----------- nombre: Eliana ortega --- salario: 145.00 --- id: 7
----------- nombre: Sofia marquez --- salario: 133.30 --- id: 8
И я хочу, чтобы второй результат не появлялся, учитывая, что зарплата cristhiam ochoa меньше 120, например:
Jefe: Yehender carrasco --- id: 1
----------- Empleados
----------- nombre: Jesus ramirez --- salario: 150.00 --- id: 1
----------- nombre: Erlinda pereira --- salario: 130.00 --- id: 2
Jefe: Ivan marquez --- id: 4
----------- Empleados
----------- nombre: Eliana ortega --- salario: 145.00 --- id: 7
----------- nombre: Sofia marquez --- salario: 133.30 --- id: 8
Я знаю, что должен изменить условие фильтрации, чтобы все дети учитывались, но я не знаю, как это сделать