【发布时间】:2012-10-05 01:58:25
【问题描述】:
SQLalchemy 中有没有办法告诉查询使用哪个索引?
我需要这个的原因是它生成的 SQL 查询使用了“错误”的索引——我拥有的两个字段正好存在一个索引,但它没有使用它。
谢谢!
【问题讨论】:
标签: python sql indexing sqlalchemy
SQLalchemy 中有没有办法告诉查询使用哪个索引?
我需要这个的原因是它生成的 SQL 查询使用了“错误”的索引——我拥有的两个字段正好存在一个索引,但它没有使用它。
谢谢!
【问题讨论】:
标签: python sql indexing sqlalchemy
我认为您可以为此使用with_hint()。
例如
session.query(Model).with_hint(Model, 'USE INDEX col1_index')
老实说,我真的不知道这件事;我是在他们的ORM tests 中找到“USE INDEX”时发现的。
【讨论】:
with_hint时指定dialect_name参数:session.query(Model).with_hint(Model, 'WITH(INDEX(col1_index))', 'mssql')