【问题标题】:django mysql force usage of indexdjango mysql 强制使用索引
【发布时间】:2015-10-03 07:07:04
【问题描述】:

我正在使用 django orm 和 mysql。 由于某种原因,mysql 使用了错误的索引。 我想手动覆盖使用的索引。 我看到 django 团队出于跨平台原因决定阻止使用会强制索引的 with_hints 扩展。 有没有人有任何解决方案\建议我如何让mysql通过django使用正确的索引?

谢谢

【问题讨论】:

    标签: python mysql django


    【解决方案1】:

    django-mysql 扩展支持索引提示。详情请见the docs

    【讨论】:

    • 如果您推荐一个库,请说明如何应用它。
    • 我用过force_index
    【解决方案2】:

    Django 支持原始 sql 查询以满足您的需求,请参阅文档文章 Performing raw SQL queries

    当模型查询 API 不够用时,您可以退回到编写原始 SQL。 Django 为您提供了两种执行原始 SQL 查询的方式:您可以使用 Manager.raw() 执行原始查询并返回模型实例,或者您可以完全避开模型层并直接执行自定义 SQL。

    【讨论】:

    • 我正在使用tastepie,所以我不确定如何直接编辑mysql 查询。你知道吗?
    • 不,抱歉。从来没有用过美味的派。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-22
    • 2018-05-23
    • 2011-06-17
    • 2017-05-06
    • 2013-06-30
    • 1970-01-01
    • 2018-12-18
    相关资源
    最近更新 更多