问题标签 [aggregate-functions]
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 - 使用 MIN 和 AVG 的 SQL 聚合函数
如何在我的数据中省略零?
例如使用 MIN 函数?我想要除 0 以外的最小值...
我怎样才能获得下一个最大的?
如果我使用 AVG 功能,是否还有一种以相同方式跳过 0 的一般方法?问题是我继承的表不使用 NULL 值,但所有财务数据的值为 0.00。
谢谢,
oracle - 如何在 Oracle 10g PL/SQL 中获取序列的 MINVALUE?
我编写了一个 PL/SQL 脚本来将序列的值设置为表主键的最大值:
但是,如果序列的 MINVALUE 大于最大主键,则会出现错误:
ORA-08004: 序列 MBR_SEQ.NEXTVAL 低于 MINVALUE 并且无法实例化
ORA-06512: 在第 10 行
说“通过increment_amount增加序列,但不要低于MINVALUE”的最简单方法是什么?
mysql - 如何使用聚合函数在 MySQL 查询中获取分组记录的第一条和最后一条记录?
我正在尝试获取“分组”记录的第一条和最后一条记录。
更准确地说,我正在做这样的查询
但我想获得该组的第一条和最后一条记录。它可以通过做大量的请求来完成,但我有一张很大的桌子。
是否有(如果可能的话,处理时间较短)方法可以用 MySQL 做到这一点?
django - 如何在 Django 的相关模型中按带注释的 Count() 进行排序
我正在 Django 中构建食物记录数据库,但遇到了与查询相关的问题。
我已经设置了我的模型以包括(除其他外)通过消费模型通过 M2M 字段“消费者”连接到用户模型的食品模型。食物模型描述食物菜肴,消费模型描述用户对食物的消费(日期、数量等)。
我想创建一个查询,该查询返回所有 Food 对象,该对象按 Food 对象在该用户的 Consumption 表中出现的次数(用户消耗食物的次数)排序。
我正在尝试以下内容:
但这当然会计算与 Food 对象相关的所有 Consumption 对象,而不仅仅是与用户关联的那些。我是否需要更改我的模型,或者我只是在查询中遗漏了一些明显的东西?
这是一个非常耗时的操作(除其他外,它用于填充前端中的自动完成字段)并且 Food 表有几千个条目,所以我宁愿在数据库端进行排序,而不是执行蛮力方法并迭代结果:
然后使用 python sort 对它们进行排序。我不认为这种方法会随着用户群的增加而很好地扩展,我想从一开始就将数据库设计为未来的证明。
有任何想法吗?
sql - 是否可以执行按位分组功能?
我在包含按位标志的表中有一个字段。例如,假设有三个标志:4 => read, 2 => write, 1 => execute
表格如下所示*
:
我有兴趣找到在任何记录上设置了特定标志(例如:写入)的所有用户。要在一个查询中执行此操作,我认为如果您将所有用户的权限组合在一起,您将得到一个值,即他们权限的“总和”:
*
我的实际表格与文件或文件权限无关,这只是一个例子
有没有办法可以在一个语句中执行此操作?在我看来,它与带有 GROUP BY 的普通聚合函数非常相似:
...但显然,一些神奇的“按位或”函数而不是 SUM。任何人都知道这样的事情吗?
(对于奖励积分,它在 oracle 中有效吗?)
sql-server-2005 - SQL Server 2005 中的“索引”(也称为维护表)聚合数据
我有一个维护系统性能数据的表,每条记录都是对某个重要方法的调用,由方法名称、其持续时间和一个令牌组成——对系统的每个请求都被赋予一个唯一的令牌,所以所有的具有相同令牌的记录是相同的请求,例如:
我对按 Token 和 CallName 分组的聚合数据感兴趣,例如:
现在这个表可能非常大,我只会对每个查询的前几条记录感兴趣,所以我已经为这两个查询实现了分页。问题在于,因为这些查询涉及聚合函数,SQL 服务器最终还是会进行表扫描。
其他人以前肯定有过这个问题吗?
我在这里真正需要的是按令牌分组的 SUM(Duration) 上的“索引”,即我可以在其中执行以下操作的表:
- 这真的是个坏主意吗?
- 如果是这样,有没有更好的方法?
- 最好的方法是什么?INSERT / UPDATE / DELETE 上的触发器会起作用(我根据旧值和更改的数据更新聚合值),还是在更新此表时手动更新我的“索引”会更好?
触发器是迄今为止我想出的最好的解决方案,但我已经看到这是一个死锁/一致性的噩梦!:-S
sql - TSQL Group By 包括所有列
我有一个 TSQL 查询,它执行以下操作:
结果输出是
我想做的是获得结果中的所有产品,即使是那些没有销售的产品。我尝试在产品表上进行 LEFT JOIN,但这只会让事情变得混乱。
所以我希望我的输出是这样的。
知道怎么做吗?
sql-server - 如何计算中位数?
我需要计算一组数据的中位数,所以我创建了一个临时表,并尝试在线关注一些文章,但成功率为零,这就是我正在使用的:
平均值效果很好,现在我需要中位数。
c# - 使用 LINQ 的多个 SUM
我有一个类似下面的循环,我可以使用多个 SUM 来做同样的事情吗?
sql - TSQL:无法在 COUNT(*) 上执行聚合函数 AVG 来查找一天中最繁忙的时间
考虑一个保存日志数据的 SQL Server 表。重要的部分是:
这里的查询是围绕一天中按小时查找访问量的分布。我们有兴趣查看给定日期范围内
每小时平均访问次数的分布。
查询结果将是这样的:
目的是编写这样的查询:
然而,这不是一个有效的查询:
无法对包含聚合或子查询的表达式执行聚合函数。
问题:您将如何重新编写此查询以收集平均总数(即代替AVG(COUNT(*))
小时?
想象一下,这个查询的结果将被交给一个PHB,他想知道一天中最忙的时间是什么时候。
- SQL Server 2005+