Django/Postgres:RangeField 上的聚合

2023-12-07

是否可以执行聚合函数Django's RangeField?

假设我们有 3 个对象BigIntegerField price_range.

第一个对象:price_range = [10,5000]

第二个目标:price_range = [1,5000]

第三个目标:price_range = [100,9000]

的结果Max and Min这三个对象的聚合将是:

min = 1 and max = 9000

我正在尝试聚合Max and Min这边走:

MyModel.objects.aggregate(Min('price_range'),Max('price_range'),)

这会引发错误:

编程错误:函数 min(int8range) 不存在第 1 行: 选择 MIN("app_mymodel"."price_range") AS "price_range__min" FROM "app...


您可以通过以下方式获得范围界限Upper(..) and Lower(..) so:

from django.db.models.functions import Upper, Lower

MyModel.objects.aggregate(
    Min(Lower('price_range')),
    Max(Upper('price_range'))
)

但请注意,如果范围不重叠(例如[0, 20] and [50, 100]),你仍然会得到一个范围[0, 100].

显然现代版本的 Django 需要将字段命名为@EricTheise 说:

from django.db.models.functions import Upper, Lower

MyModel.objects.aggregate(
    low=Min(Lower('price_range')),
    high=Max(Upper('price_range'))
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django/Postgres:RangeField 上的聚合 的相关文章

随机推荐

  • 如何在iPhone sdk中获取当前日期的下一个和更早的日期

    我有一个日期对象 NSDate 日期 NSDate 日期 现在我想要一个早于这个日期和下一个日期的日期 我应该使用什么功能 更早和更晚意味着前一天和后一天 我也尝试使用 EarlyDate 但可能是我使用错误 因为它返回相同的日期 tnx
  • 如何在xaml中使用List

    所以我很确定在定义部分我需要包含以下内容 xmlns s clr namespace System Collections Generic assembly 但我只是不知道用什么来代替 我想用代码做的是这样的
  • 为什么“@input”装饰器比“inputs:[]”更受青睐

    有两种方法可以定义组件的输入 Component inputs displayEntriesCount export class MyTable implements OnInit displayEntriesCount number an
  • Linux 上 JavaFX 无法解释的内存泄漏

    我的 Java 程序仅在 Linux 上运行时发生内存泄漏 症状 VisualVM 显示堆大小约为 300Mb 顶部 并且没有可疑活动 在 Mac OS X 上 程序使用 900Mb 内存无限期运行 通过活动监视器 在 Linux 上 当操
  • 更有效地初始化数组保存结构

    我有以下代码 const N usize 10000 const S usize 7000 derive Copy Clone Debug struct T a f64 b f64 f f64 fn main let mut t T N T
  • Java中如何获取当前服务器时间?

    如何在Java中获取当前服务器的时间 我试过System currentTimeMills 但它返回的是客户端时间而不是服务器时间 我想获得 服务器 的时间 以毫秒为单位 我在网上搜索过 但没有得到 所有代码返回值来自1970 我想要的是例
  • 如何通过 vanilla js 更新范围输入滑块的位置?

    我正在尝试以编程方式更新输入滑块的位置 type range 但是 我设置的值不会更新滑块的位置 我也尝试过使用 element dispatchEvent new Event input 强制输入更改 该事件确实会触发 但是滑块不会在视觉
  • TensorFlow 操作的共享名称

    许多 TensorFlow 操作都有shared name作为可选参数 例如make initializable iterator 相关问题 大多数 全部 TF 资源 变量 TensorArray ConditionalAccumulato
  • 错误:预期的不合格 ID 错误:含义和修复? [复制]

    这个问题在这里已经有答案了 我刚刚学习 C 刚从 python3 和 QBASIC 出来 并且很难阅读编译器错误并理解它们 这使得调试变得困难 我遇到的问题是我不断拉出编译错误 错误 预期的不合格 ID 这发生在第 10 行和第 18 行
  • 如何将对象值转换为类型值?

    我有这样的类型 public class TypeValue public Type Type get private set public object Value get private set 所以我可以做类似的事情 TypeValu
  • 如何在 > 4 GiB 的地址范围内进行 malloc

    我正在尝试在 X86 64 Linux 上做一些测试 我想知道如何 让 malloc 在高于 4 GiB 的范围内分配返回地址 我是否必须使用单独 自定义库覆盖 malloc 或者还有其他简单的方法可以做到这一点吗 Thanks 编辑 我感
  • jQuery Draggable - 如果它对一个元素应用两次会发生什么?

    直到最近我才进行了这样的设置 它被多次调用 rsh draggable destroy draggable blah blah details The destroy是为了阻止多个可拖动处理程序在类上累积 AJAX 正在创建新元素 并且初始
  • NSScrollView 调整大小时向下滚动?

    我有一个 NSScrollView 里面有一个自定义视图 当我调整 NSScrollView 的大小时 高度会增加并且向上滚动 除非有更简单的方法 否则我可能必须注册一个通知以查看视图大小是否发生变化 然后将scrollPoint 调整到新
  • 如何将切换开关与 django 布尔字段一起使用?

    我有一个 work experience 模型 其中包含 is working 字段 当用户仍在公司工作时 该字段是正确的 在前端 我使用切换开关 我想在单击时更改布尔字段值 is working 在django中使用toggle的逻辑应该
  • Firestore:如何从数组映射中查询数据

    这是测试数据库的架构 我想编写一个查询 可以获取联系人在任何数组索引中 id 1 的所有文档 我检查过array containsFirestore 的运算符 但我的数组有一个地图 然后有字段 id 您当前无法构建在数组中查找对象字段的查询
  • 责任链模式是否只是一种矫枉过正?处理程序列表可以完成相同的任务

    在 责任链 COR 模式中 我们创建一个处理程序链 将请求传递给链中的第一个 它试图处理它 如果不能 它将请求转发到链中的下一个 依此类推 例如 Handler1 new ConcreteHandler1 handler1 handle p
  • 将值分配给向量中的行

    我有一个相对简单的问题 我和我的同事都无法弄清楚 我有一个值向量 我想将其粘贴到其中all我的数据集中的行在特定列范围内 如果我逐行分配值 则以下代码有效 data 1 1 10 lt myvector data 2 1 10 lt myv
  • 如何在一张背景图像上移动玩家?

    抱歉最近问了这么多问题 我刚刚开始接触 pygame 对于我之前的问题 我认为我没有正确地表达我想要做的事情 这是我尝试演示的一张快速图片 这是我希望玩家在其上移动的单个背景图像或地图 红色 X 只是角色的起点 我尝试做到这一点 以便当我移
  • 将缺失的日期添加到数组中

    我有以下数组 Array 2010 10 30 gt 1 2010 11 11 gt 1 2010 11 13 gt 11 我试图用第一个元素和最后一个元素之间所有缺失的日期填充数组 我尝试使用以下内容但无济于事 foreach users
  • Django/Postgres:RangeField 上的聚合

    是否可以执行聚合函数Django s RangeField 假设我们有 3 个对象BigIntegerField price range 第一个对象 price range 10 5000 第二个目标 price range 1 5000