问题标签 [aggregate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - Django - 找到每个组的极端成员
我一直在玩 Django ORM 中的新聚合功能,我认为有一类问题应该是可能的,但我似乎无法让它工作。此处描述了我尝试生成的查询类型。
所以,假设我有以下模型 -
因此,每次创建或修改联系人时,都会创建一个新记录,以保存当时出现在联系人中的信息以及时间戳。现在,我想要一个查询,例如,返回与 ContactGroup 关联的每个联系人的最新记录实例。在伪代码中:
一旦我弄清楚了这一点,我只想能够在查询集上抛出一个filter(record_date__lt=some_date)
,并获取它存在于some_date
.
有人有什么想法吗?
编辑:看来我并没有真正让自己清楚。使用这样的模型,我想要一种使用纯 django ORM(没有额外())执行以下操作的方法:
将子查询放在 where 子句中只是解决此问题的一种策略,我上面给出的第一个链接很好地涵盖了其他策略。我知道如果不使用 extra(),where-clause 子选择是不可能的,但我认为新的聚合功能可能使其他方法之一成为可能。
sql - SQL - WHERE AGGREGATE>1
Imagine I have a db table of Customers containing {id,username,firstname,lastname}
If I want to find how many instances there are of different firstnames I can do:
How do I write the same query to only return firstnames that occur more than once? i.e. in the above example only return the rows for jeff and adam.
sql - Rails 的 Active Record 可以处理 SQL 聚合查询吗?
刚开始学习活动记录,想知道如何最好地从涉及 SQL 聚合查询的多个表中检索数据。
在以下示例中(来自医疗应用程序),我正在寻找每位患者的各种类型的最新事件(例如,上次访问、上次实验室测试等)。正如您从下面的 sql 查询中看到的那样,我正在从分组查询中查找 max(date) 值。我求助于 find_by_sql 来执行此操作 - 但是我想看看如何在不使用 find_by_sql 的情况下执行此操作。
IOW - 您将如何使用纯 ActiveRecord 方法在此处获取所需的数据。下面是我正在测试的表和类定义:
按 Sql 查找以检索每种类型的最新条目 - 请注意此处的“max(event_date)”
这是示例 sql 查询结果:
课程
sql - SQL JOIN, GROUP BY 在三个表上获取总数
我继承了以下数据库设计。表格是:
我的查询需要返回给定客户编号的 invoiceid、发票金额(在 invoices 表中)和应付金额(发票金额减去已向发票支付的任何款项)。一个客户可能有多个发票。
当对发票进行多次付款时,以下查询为我提供了重复记录:
我该如何解决这个问题?
sql - 聚合函数和其他列
SQL 查询是否有可能返回一些普通列和一些聚合列?
像 :
ruby - 如何接收对 ruby 活动记录的聚合查询?
使用 ruby、camping webframework、activerecord-2.1.1,我的数据库结构是...
我想要每个用户名的总和
我有以下代码。
我收到了以下结果。仅返回用户名:
我无法同时收到用户名和用户名命中的总和
linq - Linq 效率问题 - foreach 与聚合
哪个更有效率?
我想我要问的是,调用 Sum 基本上会枚举列表,对吗?因此,如果我四次调用 Sum,那不是四次枚举列表吗?只做一个 foreach 不是更有效,所以我只需要枚举列表一次吗?
sql - 关于计数的SQL问题
我想进行查询,以便我只能获取至少有 50 个地点的位置。
我有一张位置表:
以及按 Location_id 连接到 Locations 的 Places 表
我可以像这样加入他们:
选择places.name,places.id,locations.country,locations.city FROM places INNER JOIN locations ON places.location_id = locations.id
我怎样才能只获得至少有 50 个地方的城市的结果并按最大数量排序?
谢谢!
mysql - 在 mySQL 中获取没有子查询的 GROUP BY 查询的最大值
我有一些查询将数据集分组并计算它们,例如
现在我有相同的行数column
,到目前为止一切都很好。
问题是:我如何获得这些“分组”计数的聚合(最小/最大/平均/总和)值。使用子查询肯定是最简单的,但我想知道这是否可能在这个单一查询中
orm - DDD:子类和根实体
假设我有典型的实体Car
在我的域模型中,这个实体将是Aggregate的根实体。
现在假设我专攻汽车。我创造了一辆法拉利,而快乐的法拉利车主喜欢给他们起一个绰号:
假设我有另一个实体,即公司实体。它将是另一个Aggregate的根实体。有很多人在公司工作,由实体Person表示。人可能有汽车。但是一家公司的总裁通常都很有钱,这种人,他们有法拉利:
在这种情况下,我的实体 President位于Company Aggregate内部,它持有对 Ferrari 的引用,这是另一个聚合的根实体的专业化。
鉴于 DDD,这是正确的吗?我可以/应该将根实体本身的专业化视为同一聚合的根实体吗?我的意思是,在我描述的领域中,实体 Ferrari 也是 Car Aggregate 的根实体(因为 Ferrari 也是 Car)?
现在假设我必须将此模型持久保存到 Database。我认为我的问题不取决于我将使用的 OR/M 框架。
我应该如何建造装有 Cars 的桌子?我应该构建一个带有“CarType”列(可能的值:“Car”、“Ferrari”)和一个可为空的 Nickname 列的 Cars 表吗?
或者我应该为汽车和法拉利建立一个表,后者的 PK 是汽车的 FK?
谢谢!