Two things that won't answer your question: 1. I've had better luck using Mixins instead of inherited subclasses. The main reason is maintenance -- when you end up looking at AddressHistory in 2 years, you might not remember that MostRecentAddress inherits from it.
2. Your sql doesn't make sense for the description: id = Column(BigInteger, primary_key=True) Represents a row in AddressHistory with the most recent date for a given id. if `id` is a pkey, it must be unique. class _AddressMixin(object): date = Column(Date, index=True, nullable=False) id = Column(BigInteger, primary_key=True) street = Column(String(2000)) city = Column(String(2000)) state = Column(String(2000)) zip = Column(Integer) class AddressHistory(Base, _AddressMixin): __table__ = 'address_table' class MostRecentAddress(Base, _AddressMixin): __table__ = 'address_table' -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sqlalchemy+unsubscr...@googlegroups.com. To post to this group, send email to sqlalchemy@googlegroups.com. Visit this group at http://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/d/optout.