Hi, I created a class "Resource", and its subclass "BasePrAc" as below:
class Resource(BaseClass.BaseClass): __tablename__ = "resources" id = Column("id", Integer, primary_key=True, key="id") class BasePrAc(Resource.Resource): __tablename__ = "base_products_accessories" id = Column("id", Integer, ForeignKey("resources.id"), primary_key=True) And when I try to "query.join" BasePrAc or its subquery, it always gives me the OperationalError(1060, "Duplicate column name 'id'"). I checked the generated SQL statement, and found the subquery part shown as below: "..... INNER JOIN (SELECT resources.id AS id, base_products_accessories.id AS id, base_products_accessories.polymorphic_identity AS polymorphic_identity, ...." As you see, there are two "AS id" in the statement and causing the error. I was wondering why it asks "resource.id" which I didn't specify, and it would know that BasePrAc.id is equal to Resource.id since BasePrAc class is the subclass of Resource class. Some suggested to use "alias" for joining, and I tried but it didn't work. Besides, I am hoping not to use alias everytime, so joining things could be more generic. I will appreciate if you have any advise for this situation. Thank you very much, and have a nice day. W -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalchemy@googlegroups.com. To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en.