【问题标题】:django - order query set by postgres functiondjango - 由 postgres 函数设置的订单查询
【发布时间】:2011-02-07 08:14:23
【问题描述】:

我最初的问题是在这里,与 postgres 后端有关。 Postgres subquery, ordering by subquery

现在我的问题已经转移到 Django ORM 层了。我本质上想通过 postgres 函数('idx',取自上述 stackoverflow 工作)订购查询

我已经尝试过使用 model.objects.extra(order_by) 或简单的 order_by,但我相信这两者都需要 order_by 参数作为 Django 已知的属性或字段。

我正在考虑如何解决这个问题,而不必通过模型管理器恢复使用完全原始的 SQL 查询。

【问题讨论】:

    标签: django


    【解决方案1】:

    您可以使用extra 将函数结果添加到您的查询中,然后按它排序。比如:

    MyModel.objects.extra(select={'idx': 'idx(foo, bar)'}, order_by=['idx'])
    

    【讨论】:

    • 这是一个绝妙的答案。我希望我能给你的不仅仅是一个加号
    猜你喜欢
    • 2013-02-26
    • 2021-07-02
    • 2021-01-21
    • 1970-01-01
    • 2018-10-19
    • 2021-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多