from sqlalchemy import Table, Column, Integer, String,MetaData,select,insert,NVARCHAR from sqlalchemy.orm import sessionmaker from sqlalchemy.ext.declarative import declarative_base; Base = declarative_base() class LabelHandler: def __init__(self,engine) -> None: self.engine=engine def getNewReleases(self): class PropertyNamesChecked(Base): __tablename__ = 'PropertyNamesChecked' id = Column(Integer, primary_key=True) Project = Column(NVARCHAR(length=100)) CurrentVersion = Column(NVARCHAR(length=145)) Base.metadata.create_all(self.engine) Session = sessionmaker(bind=self.engine) session = Session() meta = MetaData() meta.reflect(bind=self.engine) listDeployedLabels=meta.tables['ListDeployedLabels'] class ListDeployedLabels(Base): __table__=listDeployedLabels __mapper_args__ = { 'primary_key':[listDeployedLabels.c.Project] } res=session.query(ListDeployedLabels).join(PropertyNamesChecked,PropertyNamesChecked.Project==ListDeployedLabels.Project) listOfUncheckedPropertyNames = [] for r in res: listOfUncheckedPropertyNames.append(r) return listOfUncheckedPropertyNames def markAsChecked(): pass