0
私はMySQLバックエンドでsqlachemyを使用しています。実際にはクエリの最適化に問題があります。sqlachemy:結合を使用したクエリの最適化
私はモデルの次のセットがあります。
class Book(Base):
__tablename__ = 'books'
name = Column(String(32), primary_key=True)
sku = Column(Integer, nullable=False)
class Author(Base):
__tablename__ = 'authors'
name = Column(String(64), primary_key=True)
# book
books = relationship(Book, secondary=Table(
'author_books', Base.metadata,
Column('author', String(32),
ForeignKey(Author.name), primary_key=True),
Column('book', String(64), ForeignKey("book.title"),
primary_key=True)
), backref=backref('book_authors', cascade="save-update"))
とクエリをしていた。実際には非常に非常に遅いです
authors_with_books = [(autor.name, [book.name for book in books]) for author in session.query(Authors)]
を:(
に参加し作成します。例えば。著者と書籍はM2Mの関係に関連しています。実際に私は 'session.query(Author).join(Author.books)'をしようとしていましたが、助けにはなりませんでした –