SpecialistOff.NET / Вопросы / Статьи / Фрагменты кода / Резюме / Метки / Помощь / Файлы
Список вопросов ПечатьМетки: python sqlalchemy
class Table1(Base):
    __tablename__ = "table1"
    id = Column(Integer, primary_key=True)
    text = Column(String, nullable=False)
class Table2(Base):
    __tablename__ = "table2"
    id = Column(Integer, primary_key=True)
    text = Column(String, nullable=False)
    table1_id = Column(Integer, nullable=False, ForeignKey('table1.id'))
Как написать запрос, который вернет все записи из таблицы Table1, при условии, что в таблице Table2 не найдётся, среди имеющихся записей, ни одной, которая бы ссылалась по связи Table1.id=Table2.table1_id
Что-то похожее:
if Table1.id not in Table2.table1_id.list:
    print(Table1.text)
| RemiZOffAlex Создано: 2017-01-20 19:42:20.232081 Обновлено: 2017-01-20 19:42:20.232081 | 
|---|
| db_session.query( Table1 ).filter( ~Table1.id.in_( query( Table2.table1_id ) ) ) |