outerjoin
関数呼び出しを使用してうまく動作するサブクエリに参加するクエリがあります。問題は、発行されたクエリが2-3秒で実行されるということです。 SQLサーバーコンソールにLEFT HASH JOIN
と入力します。SQLAlchemyハッシュ結合
私は
query = query.outerjoin(sub_query, join_conditions, method='hash')
の線に沿ってLEFT HASH JOIN
声明を発するようにSQLAlchemyのを強制するために使用できる方法はありますか?私はStackOverflowとインターネットのどこかで検索しようとしましたが、関連するものは何も見つかりませんでした。結果に何らかの影響がある場合は、Microsoft SQL Serverを使用しています。
ORMを使用することの簡潔さのためにパフォーマンスを犠牲にしている場合は、トレードオフができますが、明らかに私は好きではありません。
ソースを読むことから、あなたが望むものは現時点では不可能であるように見えます。 ['Query._join'](https://github.com/zzzeek/sqlalchemy/blob/master/lib/sqlalchemy/orm/query.py#L1984)、[' Join'](https:///github.com/zzzeek/sqlalchemy/blob/master/lib/sqlalchemy/sql/selectable.py#L679)とコンパイラの['visit_join'](https://github.com/zzzeek/sqlalchemy/blob/master/lib /sqlalchemy/sql/compiler.py#L1849)。それらを拡張することは、あまりにも難しい作業のように思えます。 –