问题标签 [aggregates]
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.
laravel - 在 Laravel 中按天排序获取每日聚合/总和
所以在 Laravel 中得到 sum()/count() 真的很容易......但是我如何查看过去的一个月,并每天得到行的总和?
EG ...按创建日期分组。
所以我想返回一个计数,例如 3、2、4、5 表示今天创建了 3 行,昨天创建了 2 行,前一天创建了 4 行......等等
如何在 Laravel 中轻松做到这一点?当我通过 created_at 使用组时,它总是只返回 1。
有人知道怎么做吗?
谢谢
mysql - 在不读取整个表的情况下包含聚合数据的最佳方法
我构建了一个查询,该查询使用一组典型的标题/详细信息表来报告标题表中的记录,但提供来自详细表上各种类型的每个标题记录的聚合数据。
为了解决分组问题,我创建了一个视图来加入基于发票键的所有聚合。
然后在报告查询中,我使用发票键加入详细信息视图。
在这个例子中,我用聚合数据返回了 13 个标题记录,太棒了!但我开始深入研究引擎做了多少工作,我发现了一些令人吃惊的东西。
解释表明,正在读取详细信息表中的每一行,以提供我关心的 13 个标题的聚合。我知道视图正在具体化,然后根据连接进行过滤。
问题是,有没有办法让它只读取我关心的 13 张发票的详细信息?除非我可以关联它,否则我对连接的子查询进行成像会以相同的方式工作吗?
提前感谢您的帮助。
sql - 多行聚合的 SQL 查询
我在如下表中有数据
我想获得名称的计数,这两个指标 1,2 都存在。在前面的示例中,此数字为 2(A 和 B 的指示符均为 1 和 2)。
我正在处理的数据中等大,我需要获取(预定义)指标的其他一些排列的类似信息(一旦我获得基本查询,我可以更改)。
postgresql - 在 PostgreSQL 中按二元运算符分组
我正在使用 PostgreSQL 9.2.4。
问题
我有一个带有 ID 的表和某种类型的第二列。我们称之为类型X
。我还有一个二进制函数,它对一对X
s 进行操作并返回一个布尔值。我们将调用此函数f
。f
是传递的;即,如果f(a,b)
和f(b,c)
都返回真,那么f(a,c)
也会。
我想要做的是获取一组 ID,第二列的所有对都为这个二进制函数返回 true。我怎样才能做到这一点?
性能不是一个大问题。这是导入过程的一部分,大约每年运行一次。否则在此导入期间数据库将不会被使用。
(相对)简单的例子
我创建了一个 SQL Fiddle 来开始工作:http ://sqlfiddle.com/#!12/57b97/3 。f
我想通过函数的结果来收集 ID 。请记住,一般来说,f
可能会更复杂。这只是一个例子。
我正在使用此示例 SQL Fiddle 查找的输出将类似于以下内容:
例如,假设我们从一个集合中选择任意一对 ID。假设我们选择1
和3
。然后SELECT f((SELECT data FROM temp WHERE id = 1), (SELECT data FROM temp WHERE id = 3));
返回真。
5
没有出现在任何地方,因为'green'
它是唯一长度为 5 的字符串。如果我得到重复的就可以了;我可以弄清楚如何清理它们。
真实情况详情
实际上,我的“第二列”是 PostGIS GEOMETRY(LINESTRING)
,而我的“二进制函数”是ST_Equals
. 所以真的,我正在寻找一堆重复的线串。除了表明我无法将问题简化为更易于处理的操作之外,我认为这些信息与手头的问题无关。
kendo-grid - 在聚合 groupHeaderTemplate 中设置字段值
我正在尝试聚合 akendo grid
并希望将字段值设置为groupHeaderTemplate
如下所示:
但这会返回错误tupleregex is not defined
。
mysql - 在 HAVING 中引用 FROM 别名
这里是 sql 新手。我试图只选择一列中的值大于该列平均值的元组。问题是,我正在使用的关系是在 FROM 子句中创建的,因为我需要添加一个转换(并且还需要一个子集)。
我最初使用的是 WHERE 子句,但这个 SO 答案让我相信我可以通过使用 HAVING 子句来解决问题。但是,我仍然收到此错误:
表“msan692db.l”不存在
如何以一种对我在 FROM 子句中创建的别名不视而不见的方式进行必要的比较?我想我可以在 WHERE/HAVING 子句中明确地重新创建所需的关系,但我稍后会添加更多,这似乎非常低效。
这是我的代码:
编辑:顺便说一句,我已经确认 FROM 子句本身返回一个有效的关系。
sql - 将聚合函数与内部联接一起使用
使用聚合函数时,我在理解 Group By 时遇到问题。我在不使用内部连接的情况下理解它很好,但现在我不明白要分组的内容。
这是我的代码。
如您所知,我正在尝试查找平均价格,但我不知道按什么分组。我尝试按那里的所有内容进行分组,但没有一个会起作用。有什么建议么?
以下是错误:选择列表中的“Products.ProductName”列无效,因为它既不包含在聚合函数中,也不包含在 GROUP BY 子句中。
python - Django过滤来自自定义聚合函数的注释
我正在尝试查找给定邮政编码一定距离内的所有邮政编码。我通过使用定制的聚合函数计算距离,用距离注释查询集,并根据该“距离”字段过滤查询集来做到这一点。
聚合函数正确计算距离,注释在查询集中正确创建“距离”字段。但是,过滤器总是返回一个空的查询集。当我使用“邮政编码”或“状态”等其他字段进行过滤时,它工作正常,但当我使用带注释的“距离”值作为过滤器值时返回空。我究竟做错了什么?
这是自定义聚合函数:
我从这里抓取了这个和其他代码: https ://github.com/elfsternberg/django-zipdistance/blob/master/zipdistance/models.py
我的邮政编码模型称为 ZipDistance。我可以很容易地从给定的 ZipDistance 中获得一个带有注释距离的查询集。所以这很好用:
但是任何按距离过滤的结果总是空的:
我正在使用自己的装置来填充我的数据库(即 MySQL)。问题可能是我使用的是 Django 1.5 版,并且代码是为早期版本编写的。我只是不确定,几天来我一直在尝试我能想到的一切。
sql - 为什么子查询中的聚合必须再次聚合?
我希望我在下面正确地把查询放在一起。我已经从更大的东西简化了。但是从这个例子中我的问题应该很清楚了。
在最里面的查询中nest1
,假设结果返回发票 123 的三个条目。发票已创建 (1),然后进行了两次现金存款 (2, 3),其中第二次存款 (3) 还清了发票。从该结果集中,我正在汇总总和。我也得到了paid_off_date,只有其中一行会有。
我很高兴接受有关设计此查询的更好方法的教育,但我不明白为什么我必须一直选择聚合。为什么,例如,当我选择SUM(cash_deposit) AS 'cash_deposit'
in时nest2
,我还必须SUM(cash_deposit)
在最外层的查询中选择?一旦在子查询中聚合,为什么不传递聚合?为什么我必须在每个级别继续按 id 分组?
澄清
感谢您提供任何具有改进版查询的帖子。当我开始尝试将嵌套转换为连接时,我正在处理一个产生意外结果的现有查询。我会继续玩它,但如果有人能回答关于聚合的问题以及为什么嵌套时必须重复它们,我也会非常感激。在 C# 中,我可以在一个函数中对三个数字求和,然后将结果值传回。我不必一直总结结果。我需要一些帮助来理解 SQL 子查询在这方面的不同功能。
可能的答案
我的一位同事指出,在这种情况下,这是因为我的GROUP BY
条款。例如,由于cash_deposit
andjob_phase
不在GROUP BY
子句中,因此必须对它们进行聚合。
mdx - 在 mondrian 2.4.2 的聚合表中使用 CalculatedMembers
我正在尝试在我们的 mondrian 数据仓库中设置自定义聚合表。我像这样定义了自定义聚合表:
只要[Measures].[Example]
指向一个<Measure name="Example" column="..." .../>
项目,它就可以正常工作。当它指向 a 时,<CalculatedMember name="Example" formula="..." ... />
我收到以下错误消息:
据我在网上查了一下,这东西应该适用于最新版本。我们使用的是 mondrian 2.4.2,它仅支持 AggregatedTables 中的度量。
有什么解决方法吗,sg。像定义一个缓存表?也许提供一个配置项就足够了吗?
谢谢, 塔马斯